關於equals()方法和==號的區別

首先說一下相同點:
    兩個方法都是用來做比較,並且比較的結果都是布爾值.
然後在說一下不同點:
    對於 == 來說,對於基本數據類型的比較是比較二者的值是否相等,對於引用類型比較的是地址值是否相等.
    equals()方法只能比較引用數據類型,在沒有重寫的情況下比較的是二者的地址值是否相等,(底層依賴的是 == 號)
    
    對於String,Inreger等包裝類都重寫了equals()方法,比較的是內容是否相同.
    這裏需要特別注意的是,對於String類對象的比較一定不能用 == 方法,因爲此方法比較是String對象的時候是比較的地址值是否相等,而實際的情況完全有可能兩個不同的對象的值相等.具體效果如下圖:


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章