色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

java equals 和不等于

呂致盈1年前8瀏覽0評論

Java中equals是一個用于比較兩個對象是否相等的方法。它是從Object類繼承過來的,因此每個類都有一個默認的equals方法。然而,默認的equals方法僅僅是比較對象的引用,而不是對象的值。這就意味著兩個值相等但卻不是同一個對象的情況無法被默認的equals方法識別出來。

//示例代碼
public class Employee {
private String name;
private int age;
private double salary;
// 省略構(gòu)造方法和其他方法
// 自定義equals方法
public boolean equals(Object obj) {
if (this == obj) { //地址相等,返回true
return true;
}
if (obj == null || getClass() != obj.getClass()) { //obj為null或者類型不匹配,返回false
return false;
}
Employee employee = (Employee) obj;
return Objects.equals(name, employee.name) &&
Objects.equals(age, employee.age) &&
Objects.equals(salary, employee.salary);
}
}

上述代碼中是一個自定義的Employee類的equals方法,它比較的是對象的屬性值是否相等。其中使用了一個Objects類的靜態(tài)方法equals,它是比較兩個對象是否相等。這個方法區(qū)別于Object類的equals方法,它可以比較兩個對象即使有其中一個是null。

在Java中,不等于操作符是“!=”(不等于),“==”(等于)的反義詞。這兩個操作符都是用于比較兩個變量是否相等。當兩個變量具有不同的值時,“!=”返回true,“==”返回false。如果兩個變量具有相同的值,則“==”返回true,“!=”返回false。

需要注意的是,對于基本類型(如int、float、double等),可以使用“==”進行比較,但對于引用類型,需要使用equals方法比較。這是因為引用類型存在多個引用指向同一個對象的情況,此時使用“==”比較會出現(xiàn)錯誤的結(jié)果。