Object类的equals()方法
- A:案例演示
-
a:指示其他某个对象是否与此对象“相等”。
-
b:默认情况下比较的是对象的引用是否相同。
-
c:由于比较对象的引用没有意义,一般建议重写该方法。
//重写equals方法 public boolean equals(Object obj) { Student s = (Student)obj; //年龄是一个基本数据类型,基本数据类型是不能调方法的,只能直接去比较 return this.name.equals(s.name) && this.age == s.age; } /** * @param args * equals方法,比较两个对象是否相等 * public boolean equals(Object obj){ * return (this == obj); * } * * Object中的equals方法是比较对象的地址值,没有什么意义,我们 需要重写它。 * 因为在开发中我们通常比较的是对象中的属性值,我们认为 相同属性是同一个对象,这样我们就需要重写equals方法。 */ public static void main(String[] args) { Student s1 = new Student("张三", 23); Student s2 = new Student("张三", 23); //比较两个对象是否相等,false System.out.println(s1 == s2); //重写equals方法之后比较的是对象中的属性值,true System.out.println(s1.equals(s2)); }
-