2013-03-24 68 views
-3

下面的Java代碼,它輸出錯誤:這個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

定期爲什麼?每當有人發生變化時,你是否會收到通知? – 2013-03-24 11:12:14

+2

有什麼問題?從DOM獲取數據?定期做事情? – Quentin 2013-03-24 11:12:16

+2

Fieldset + Legend設計用於將一組字段組合在一起,對於單個字段,您應該使用'

回答

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> 
0

不要試圖定期獲取價值,因爲當數據輸入到輸入中時,您將無法立即獲取數據。

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

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

開頭這些有趣的引語是什麼? – Bergi 2013-03-24 11:41:04

+0

@Bergi我不知道我的Ubuntu發生了什麼,現在單引號,雙引號鍵需要按兩次鍵入,但輸出是這樣的 – 2013-03-24 11:52:17