判斷Integer值相等不能用==


今天在開發中判斷兩個Integer值相等,

Integer a = 3;

Duixiang duixiang = new Duixiang();

duixiang = DAO.getDuixiang();

Integer b = duixiang.getB();

System.out.print(a == b);
System.out.print(a.equals(b));

發現a==b時,為false,a.equals(b)為true。

后來發現因為我b的值是從數據中拿出的一個對象的值。a和b的id不相同,所以導致了a==b為false。

得出的結論,Integer為對象,如果判斷相等要用equals,而不能用==。

如果是判斷兩個int值相等,則可以用==;

 

 

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM