java中重写equals方法

 时间:2026-02-14 11:16:02

1、举例说明

public class Person {

 String name;

 int age;

 public Person() {  super(); }

 public Person(String name, int age) {  super();  this.name = name;  this.age = age; }

java中重写equals方法

2、 // 自己重写equals 方法 public boolean equals(Object obj) {  // 如果传进来的对象 地址值和我们当前的一样  if (this == obj) {   return true;  }  // 如果传进来的是null, 返回 false  if (obj == null) {   return false;  }

java中重写equals方法

3、  /**   * 如果传进来的引用是一个人的类型,我们就将他的属性和 我们当前的属性进行比较   */  if (obj instanceof Person) {   // 将传进来的 强转成 人   Person p = (Person) obj;   // 比较各个属性值   if (p.name.equals(name) && p.age == age) {    return true;   }   return false;

java中重写equals方法

1、  }  // 如果传进来的不是人类型 肯定也是false  return false; }

 @Override public String toString() {  return "Person [name=" + name + ", age=" + age + "]"; } 

java中重写equals方法

2、重写equals方法的要求:1、自反性:对于任何非空引用x,x.equals(x)应该返回true。2、对称性:对于任何引用x和y,如果x.equals(y)返回true,那么y.equals(x)也应该返回true。

java中重写equals方法

3、传递性:对于任何引用x、y和z,如果x.equals(y)返回true,y.equals(z)返回true,那么x.equals(z)也应该返回true。4、一致性:如果x和y引用的对象没有发生变化,那么反复调用x.equals(y)应该返回同样的结果。5、非空性:对于任意非空引用x,x.equals(null)应该返回false。

eclipse给我们提供了重写的方法,点击source

java中重写equals方法

  • 梦幻西游手游如何收藏纸婚纪念信?
  • 如何设置鼠大侠软件启用随机最长间隔时间
  • 微信公众号怎么发布原创文章
  • 姜汁撞奶的做法
  • 如何征服男人吧
  • 热门搜索
    梅县旅游 贵州铜仁旅游 济南旅游指南 大连旅游图片 江西武功山旅游攻略 普宁旅游景点大全 南通旅游网 新疆旅游局官网 欢途旅游网同业平台 旅游鞋女