为什么这个java程序输出错误?

时间:2013-03-24 11:10:12

标签: java equals

以下java代码,输出false:

class Value {
int i;
}
public class EqualsMethod2 {
public static void main(String[] args) {
Value v1 = new Value();
Value v2 = new Value();
v1.i = v2.i = 100;
System.out.println(v1.equals(v2));
}
} 

为什么结果不是真的呢?在阅读一些Java文档时,我发现了以下答案: equals()的默认行为是比较句柄。但是不是v1和v2处理?

提前谢谢。

2 个答案:

答案 0 :(得分:1)

只需使用setInterval定期检查您的需求

<html>
    <head>
       <script type="text/javascript">
           var myInterval,
           myColorName,
           myDelay = xxx;
           function onLoad(){
               startTimer();  
           }
           function startTimer(){
               myInterval  = setInterval(function(){
                   myColorName = document.forms['form1'].elements['textbox'].value;
                   if(myColorName.length>0){
                       //do what you want with your color        
                   }
               },myDelay);
           }
           function stopTimer(){
               clearInterval(myInterval);
           }
       </script>
    </head>
    <body onload="onLoad()">
        <form name="form1">
            <fieldset>
            <legend>Enter Color Name:</legend>
            <input type="text" name="textbox"/>
            </fieldset>
        </form>
    </body>
</html>

答案 1 :(得分:0)

不要试图定期获取值,因为在输入中输入数据时,您无法立即获取数据。

尝试<input type=¨text¨ name=¨some¨ onkeyup=¨typed(this.value)¨/>

function typed(value)
{
console.log(value);
}