正在回答 回答被采纳积分+1
2回答
好帮手慕小班
2019-04-29 16:29:07
同学你好,这是我的代码,代码中确实调用的是重写后的equals方法,同学可以尝试运行一下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 | public class Student { private int id; private String name; public Student() { } public Student( int id, String name) { this .id = id; this .name = name; } public int getId() { return id; } public void setId( int id) { this .id = id; } public String getName() { return name; } public void setName(String name) { this .name = name; } @Override public boolean equals(Object obj) { if (obj == null ) return false ; Student temp=(Student)obj; if (getClass() != obj.getClass()) return false ; if ( this .getId()==temp.getId()&& this .getName().equals(temp.getName())) return true ; else return false ; } } |
测试类:
1 2 3 4 5 6 7 8 9 10 11 12 13 | import java.util.Arrays; import java.util.Comparator; public class Test { public static void main(String[] args) { Student stu1 = new Student( 1 , "张三" ); Student stu2 = new Student( 1 , "张三" ); System.out.println(stu1.equals(stu2)); System.out.println(stu1==stu2); } } |
运行效果是:
同学可以尝试对比一下,是否为true。
如果我的回答解决了你的疑惑,请采纳!祝学习愉快!
1. Java 零基础入门
- 参与学习 人
- 提交作业 3802 份
- 解答问题 11489 个
本阶段带你迈入Java世界,学习Java必备基础知识,基础语法、面向对象思想以及常用工具类的使用。
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧