hashCode方法和equals方法
来源:互联网 发布:手机身份证合成软件 编辑:程序博客网 时间:2024/06/09 19:57
hashCode方法:
int hashCode()返回对象的散列码,散列码可以是任意的整数或负数。两个相等的对象要求返回相等的散列码。
请看上面的例子:
String s="ok";
StringBuilder sb=new StringBuilder(s);
system.out.println(s.hashCode()+" "+sb.hashCode());
String t=new String("ok");
StringBuilder tb=new StringBuilder(t);
system.out.println(t.hashCode()+" "+tb.hashCode());
对象 散列码
s 2556
sb 20526976
t 2556
tb 20527144
字符串s与t拥有相同的散列码,这是因为字符串的散列码是由内容导出的(String类重写了从Object类继承的hashCode方法),而字符串缓冲流sb与tb却有着不同散列码,这是因为 StringBuilder 类中没有重写hashCode()方法,它的散列码是由object类默认hashCode方法导出的对象的存储地址
注意:由于hashCode方法定义在object类中,因此每个对象都有一个默认的散列码,其值是对象的存储地址)
同一个对象它们的散列码一定相等,但散列码相同不一定是同一个对象!
equals方法:
用hashCode方法比较过,在用重写的equals方法,比较对象的内容
- 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方法
- ORACLE SQL语句优化技术
- Android 事件分发机制
- 使用 TestNG 创建一个数据驱动测试过程中遇到的问题
- Spring定时任务
- 正则_字符组笔记
- hashCode方法和equals方法
- syntax error near unexpected token shell
- Unity3D 攻击范围检测
- 微信小程序实例源码大全
- php authcode 混淆加密和解密
- 手动触发点击事件
- 过滤器(Filter)和拦截器(Interceptor)的区别
- UNIX环境编程学习笔记(26)——多线程编程(一):创建和终止线程
- Spring boot 学习笔记(三)