equals源碼
在包
java.lang.Object
public boolean equals(Object obj) {
return (this == obj);
}
equals 使用的 == 去進行判斷, 是基本資料類型的時候判斷值是否相等, 當時引用資料類型的時候判斷位址值是否相等
使用 a.equals(b)
Objects.equals源碼
在包
java.util.Objects
中
public static boolean equals(Object a, Object b) {
return (a == b) || (a != null && a.equals(b));
}
使用 Objects.equals(a,b)
差別
使用
equals
的時候, 如果參數為null, 就會發生
空指針異常NullPointerException
, 這種情況就要使用
Objects.equals