Java 总结equals()方法

equals()方法

1. 以后所有的类equals()方法需要重写,因为Object中的equals()方法比较的是两个对象的内存地址,我们应该比较的是内容,所以需要重写。

2. 如何重写?

重写规则自己定,主要是看什么和什么相等时表示两个对象相等

class User{String name;Address addr;public User() {}public User(String name, Address addr) {this.name = name;this.addr = addr;}@Overridepublic boolean equals(Object o) {if (this == o) return true;if (o == null || getClass() != o.getClass()) return false;User user = (User) o;return Objects.equals(name, user.name) &&Objects.equals(addr, user.addr);}
}

3.基本数据类型比较使用 “==”

4. 引用数据类型(对象比较):调用equals方法

5.String 类型的equals()方法已经重写了,

判断两个字符串是否相等,最好不要使用“==”,最好调用字符串对象的equals()方法进行判断!

Published by

风君子

独自遨游何稽首 揭天掀地慰生平