编写Emp(eno,ename,esex)类,要求重写equals方法,编写测试类Test,实现当eno和esex相同时,两对象比较后的结果为true
1条回答
关注 重写equals方法,判断两个方面,如果是同一个对象,返回true,如果是不同对象,并且这两个对象的这三个属性都相同的话,就可以返回true,其他情况就是不相等的。实例代码如下:
public class Emp { private String eno; private String ename; private int esex; public Emp(String eno,String ename,int esex){ this.eno = eno; this.ename = ename; this.esex = esex; } public String getEno() { return eno; } public String getEname() { return ename; } public int getEsex() { return esex; } @Override public boolean equals(Object obj) { if(this==obj){ return true; } if(!(obj instanceof Emp)){ return false; } Emp compare = (Emp)obj; return this.eno.equals(compare.getEno()) &&this.ename.equals(compare.getEname()) &&this.esex==compare.getEsex(); } public static void main(String[] args) { Emp p1 = new Emp("01","wang",1); Emp p2 = new Emp("01","wang",1); System.out.println(p1.equals(p2)); } }
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥15 我这模型写的不对吗?为什么lingo解出来的下面影子价格这一溜少一个变量
- ¥50 树莓派安卓APK系统签名
- ¥15 maple软件,用solve求反函数出现rootof,怎么办?
- ¥65 汇编语言除法溢出问题
- ¥15 Visual Studio问题
- ¥20 求一个html代码,有偿
- ¥100 关于使用MATLAB中copularnd函数的问题
- ¥20 在虚拟机的pycharm上
- ¥15 jupyterthemes 设置完毕后没有效果
- ¥15 matlab图像高斯低通滤波