[Android面试题-11] 实现一个类的equals方法
来源:互联网 发布:开票系统网络连接失败 编辑:程序博客网 时间:2024/06/09 07:24
在实现equals方法之前我们应该明确,equals方法本身具备以下性质:
1.自反性:对于任何非空引用x,x.equals(x)应该返回true。
2.对称性:对于任何引用x和y,如果x.equals(y)返回true,那么y.equals(x)也应该返回true。
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。
了解了以上性质之后我们便可以写出如下的equals方法:
class People{ private String name; public People(String name){ this.name = name; } public String getName(){ return this.name; } public boolean equals(Object obj);}public boolean equals(Object obj){ if(this == obj) return true; if(obj == null) return false; if(this.getClass() != obj.getClass()) return false; People tmp = (People)obj; if(tmp.getName().equals(this.getName())) return true; return false;}
- [Android面试题-11] 实现一个类的equals方法
- 面试题:C++实现一个不能被继承的类
- equals 面试题
- java 面试题 请设计一个方法,可以实现获取任意范围内的随机数
- java基础面试题之老题新解:"==" 和 "equals()"方法的区别
- java面试题5--String 的==和equals()方法
- java面试题之hashCode与equals()方法
- 关于类构造的一个面试题
- 一个合格的equals方法
- 一个数的分解方法(一道面试题)
- android的面试题
- Android的面试题
- Android 的面试题
- android的面试题
- 一个百度面试题“找珠子”的实现算法
- 常见笔试面试题:实现一个递增排序的单链表
- C++面试题:String类的实现
- C++面试题--string类的实现
- sqlserver存储过程和触发器的区别
- asp.net mvc 多个提交按钮
- linux内核I2C子系统学习(二)
- android4.2.2修改状态栏透明
- linux内核I2C子系统学习(三)
- [Android面试题-11] 实现一个类的equals方法
- A Quick Reference for Oracle Database 10g RAC on Linux and Unix Platforms
- Flex messaging service
- uva 10392 Factoring Large Numbers
- UITableView里的数据刷新和位置更新
- android应用启动画面+activity动画
- jackson
- 在mysql中存储ip地址
- 去除iframe内滚动条