共計 926 個字符,預(yù)計需要花費(fèi) 3 分鐘才能閱讀完成。
在 Java 中,可以使用 equals()
方法來判斷兩個實體類是否一致。equals()
方法是 Object 類的一個方法,可以用來比較兩個對象是否相等。默認(rèn)情況下,equals()
方法比較的是兩個對象的引用是否相等,即是否指向同一個內(nèi)存地址。
一般情況下,我們需要重寫實體類的 equals()
方法來定義自己的比較邏輯。在重寫 equals()
方法時,通常需要比較兩個對象的所有屬性是否相等。例如,如果有一個 Person 類,有 name 和 age 兩個屬性,可以按照以下方式重寫 equals()
方法:
public class Person {
private String name;
private int age;
// 構(gòu)造器、getter、setter 等省略
@Override
public boolean equals(Object obj) {if (this == obj) {return true;}
if (obj == null || getClass() != obj.getClass()) {return false;}
Person person = (Person) obj;
return age == person.age && Objects.equals(name, person.name);
}
}
在上述代碼中,首先判斷兩個對象的引用是否相等,如果是則返回 true。然后判斷參數(shù)對象是否為 null 或者類型是否相同,如果不是則返回 false。最后比較兩個對象的屬性是否相等,使用 Objects.equals()
方法可以比較兩個對象的字符串屬性是否相等,避免了空指針異常的問題。
通過重寫 equals()
方法,可以在需要比較兩個實體類是否一致時使用 equals()
方法進(jìn)行判斷。例如:
Person person1 = new Person("Alice", 18);
Person person2 = new Person("Alice", 18);
boolean isEqual = person1.equals(person2);
System.out.println(isEqual); // 輸出 true
上述代碼中,person1 和 person2 的 name 和 age 屬性都相等,所以 equals()
方法返回 true。
丸趣 TV 網(wǎng) – 提供最優(yōu)質(zhì)的資源集合!
正文完