equals()方法、 和 hashcode()方法
来源:互联网 发布:竞拍系统源码 编辑:程序博客网 时间:2024/05/12 05:25
1.equals()方法:
方法格式:public boolean equals(Object obj)功能:比较引用类型数据的等价性
等价标准:引用类型比较引用地址,基本类型比较值。
equals()方法与==操作符的区别:
equals()方法只能比较引用类型数据,而“==”可以比较引用类型和基本数据类型数据;
equals()方法存在特例:对File、String、Date及封装类等类型来说,是比较类型及对象的内容而不考虑引用的是否为同一实例,因为在这些类中重写了Object类的equals()方法。
可以根据需要,在用户定义类中重写其equals()方法
2.hashcode()方法:
方法格式:public int hashCode() {…}
返回该对象的哈希码值 。
如果你重写了equals,比如说是基于对象的内容实现的,而保留hashCode的实现不变,那么很可能某两个对象明明是“相等”,而hashCode却不一样。
如果根据equals(),两个对象均相同,则调用这两个对象的hasCode()必须返回相同的int值。
如果重写了equals()方法,一般也要重写hashCode方法。
System.identityHashCode("abcd");不管有没有重写hashCode都会打印地址值
返回该对象的哈希码值 。
如果你重写了equals,比如说是基于对象的内容实现的,而保留hashCode的实现不变,那么很可能某两个对象明明是“相等”,而hashCode却不一样。
如果根据equals(),两个对象均相同,则调用这两个对象的hasCode()必须返回相同的int值。
如果重写了equals()方法,一般也要重写hashCode方法。
System.identityHashCode("abcd");不管有没有重写hashCode都会打印地址值
0 0
- hashcode()和equals()方法
- hashcode() 和 equals()方法
- equals和hashCode方法
- hashcode()和equals()方法
- equals 和 hashcode 方法
- hashcode()和equals()方法
- hashCode()和equals方法
- hashcode()和equals()方法
- hashCode()和equals()方法
- equals和hashcode方法
- equals()和hashCode()方法
- hashcode和equals方法
- equals和hashcode方法
- hashCode和equals方法
- equals和hashcode方法
- hashcode和equals方法
- Equals 方法和 HashCode方法
- equals方法和hashCode方法
- 11.cpp
- DSP 嵌入式C语言学习总结
- elasticsearch java API ------搜索
- 9.3顺序容器操作
- 玩游戏写算法——汉诺塔
- equals()方法、 和 hashcode()方法
- 贪吃蛇-源码(待完善)
- I/O复用之epoll模型
- 数据库第三次作业
- ZOJ 3795 Grouping(强联通分量 + 缩点 + Dp)
- Android shap的使用
- 2013年02月18日
- 只要你的本本是win7的系统,就能让…
- python查漏补缺之list列表的remove