java类重写equals里面有字段是空的怎么办?一个一个判断非空吗
发布网友
发布时间:2022-06-07 18:25
我来回答
共1个回答
热心网友
时间:2023-11-14 21:23
1.引用类型的基类没有重写Equals
2.引用类型的基类重写了Equals
3.值类型重写了Equals if (this == obj) return true; //对象类型是否相同,不同返回false if (obj == null) return false; //对象是否为空,为空返回false if (!(obj instanceof Person)) return false; //对象不是Person类型 Person other = (Person) obj; //定义一个Person对象 if (age != other.age) return false; //age是否等于other.age if (name == null) { //姓名为空,,,,,下面的不解释了,自己应该看得懂了 if (other.name != null) return false; } else if (!name.equals(other.name)) return false; return true; } 这段代码重写equals方法的原因,应该是person对象只有在姓名和年龄都相同时,才返回true,大概是用来判断是不是同一个人的吧