Object类:hashCode() 与 equals() 的关系
来源:互联网 发布:java 图片服务器搭建 编辑:程序博客网 时间:2024/04/28 14:53
Java对于eqauls方法和hashCode方法是这样规定的:
1、如果两个对象相同,那么它们的hashCode值一相同;
2、如果两个对象的hashCode相同,它们并不一定相同。
上面说的对象相同指的是用eqauls方法比较。
简单一点理解:
hashcode可以理解为分组,如果两个对象哈希值相等,则说明这两个对象将分在同一组;接下来比较equals,如果equals也相等,则说明这两个对象相等!
否则,均为不相等!
代码示例:
package sample.com;import java.util.HashSet;import java.util.Set;public class EqualsTest {public static void main(String[] args) {Set<A> set = new HashSet<A>();A a1 = new A();A a2 = new A();A a3 = new A();A a4 = new A();set.add(a1);set.add(a2);set.add(a3);set.add(a4);System.out.println(set.size()); // 1}}class A {@Overridepublic int hashCode() {// TODO Auto-generated method stubreturn 1;}@Overridepublic boolean equals(Object obj) {// TODO Auto-generated method stubreturn true;}}
0 0
- Object类:hashCode() 与 equals() 的关系
- Object类中的toString(),equals(), hashCode()方法之间的关系
- equals与hashcode的关系
- equals 与hashCode 的关系
- hashcode 与equals关系
- Java面试中hashCode()与equals(Object obj)方法关系的准确回答
- java重写equals(Object obj)与重写hashCode()之间的关系
- hashcode、equals与==的关系
- Java hashcode 与 equals 的关系
- java 中hashcode 与 equals的关系
- java 中hashcode 与 equals的关系
- java 中hashcode 与 equals的关系
- java 中hashcode 与 equals的关系
- java 中hashcode 与 equals的关系
- java 中hashcode 与 equals的关系
- hashcode与equals方法的关系
- java 中hashcode 与 equals的关系
- java 中hashcode 与 equals的关系
- 黑马程序员------------------异常
- 常用网站
- 关于代用带参函数CCCallFuncND
- Excel VBA基础教程
- GSM协议软件体系结构
- Object类:hashCode() 与 equals() 的关系
- 栈
- 三人年龄 三个神秘蒙面人来访F博士。博士询问他们年龄时,他们说:我们中年龄最小的不超过19岁。我们3人年龄总和为70岁。且我们三人年龄的乘积是所有可能情况中最大的。
- 如何搜集企业域中所有电脑的硬件配置信息
- 插入排序
- Hibernate 懒加载解决方案
- 最大子序列和问题
- 假设有两种微生物 X 和 YX出生后每隔3分钟分裂一次(数目加倍),Y出生后每隔2分钟分裂一次(数目加倍)。
- 弱符号__attribute__((weak))