1. 程式人生 > >Java判斷相等(==和equals()方法)

Java判斷相等(==和equals()方法)

 Java中判斷兩個變數是否相等有兩種方式:一種是利用==運算子,另一種是利用equals方法。如果變數是基本型別,那麼使用==和使用equals會得到相同的結果,都是判斷變數的值是否相對。如果變數是引用型別,==運算子判斷變數是否指向同一引用物件,equals判斷變數"值"是否相等。Java值型別對應的包裝類(Boolean、Byte、Short、Integer、Long、Float、Double、Charcater)可以利用==運算子進行值判斷。

  1. int inta = 65;  
  2. float floata = 65.0f;  
  3. Integer intb = 65;  
  4. Float floatb = 65
    .0f;  
  5. //inta == floata根據值判斷,結果是true
  6. System.out.println("inta == floata:" + (inta == floata));         
  7. //inta == intb根據值判斷,結果是true
  8. System.out.println("inta == intb:" + (inta == intb));  
  9. //inta == floatb根據值判斷,結果是true
  10. System.out.println("inta == floatb:" + (inta == floatb));  
  11. String stra = "測試";  
  12. String strb = new
     String("測試");  
  13. String strc = new String("測試");  
  14. String strd = "測試";  
  15. //stra和strb指向不同的物件,結果是false
  16. System.out.println("stra == strb:" + (stra == strb));  
  17. //stra和strd指向同一個物件,結果是true
  18. System.out.println("stra == strd:" + (stra == strd));  
  19. //strb和strc指向不同的物件,結果是false
  20. System.out.println("strb == strc:" + (strb == strc));  
  21. //strb和strc的值一樣,結果是true
  22. System.out.println("strb equals strc:" + (strb.equals(strc)));  
  23. //stra和strb的值一樣,結果是true
  24. System.out.println("stra equals strb:" + (stra.equals(strb)));  

很不錯啊!!!