equal | == | equals | hashCode
来源:互联网 发布:php 权限管理框架 编辑:程序博客网 时间:2024/05/21 10:53
==用于判断前后对象的地址是否相同,常用于比较引用是否指向相同对象。在预编译过程有如下要求:
1. 相同类型的引用可以比较
2. 不同类型的引用要进行比较。其中一个的类型必须派生自另一个,否则编译报错。
equal / equals 用于判断前后对象的值是否相同,即地址储存的内容是否相同。
如
在实际情况中的equals不一定满足实际需求,Java中提供了重写的方案,但需要满足原则如下:
重写equals方法后需要重写hashCode方法,保证自定义为相等的两个对象其哈希码相同。
即若通过了equals方法的测试,那么必须同样通过HashCode的方法测试。
1. 相同类型的引用可以比较
2. 不同类型的引用要进行比较。其中一个的类型必须派生自另一个,否则编译报错。
equal / equals 用于判断前后对象的值是否相同,即地址储存的内容是否相同。
如
点击(此处)折叠或打开
- String string = null;
- String string2 = null;
- 则 string==string2;
- string = new string();
- string2 = new string();
- 则string!=string2 && string equal string2
点击(此处)折叠或打开
- public boolean equals(Object object){//修饰符和参数类型限定为boolean,Object
- if (this == object) {
- return true;//自反性,传递性,对称性需要满足
- }
- if (object == null) {
- return false;//规定,用null检查之恒等于false
- }
- if (!(object instanceof <class-name> )) {
- return false;//强制转换错误
- }
- if (the Condition you want) {//自定义,重写
- return true;
- } else {
- return false;
- }
- }
即若通过了equals方法的测试,那么必须同样通过HashCode的方法测试。
点击(此处)折叠或打开
- public int hashCode(){
- //equals方法多于成员变量有关
- //通常的方法是将成员变量与某一素数相乘,使哈希码能够满足要求且随机分布。
- return ....;
- }
0
上一篇:Java 将对象按某属性排列
下一篇:IKanalyzer分词实例并统计词频
相关热门文章
- JDK1.6官方下载_JDK6官方下载_...
- MyEclipse6.5下载及注册码...
- Eclipse+MyEclipse的配置
- Eclipse 插件安装、升级和卸载...
- 最新版SWT Designer 6.0 安装,...
- ChinaUnix & ITPUB社区12周年...
- ssh连接出现以下提示,求解...
- 如何扩展MYSQL
- 准备做一个大型门户,用户什么...
- gbk or utf8
给主人留下些什么吧!~~
评论热议
- equal | == | equals | hashCode
- equal、hashcode、==
- equal、hashcode ==
- Java 中equal() 方法与==的区别以及 equals()与 hashCode()方法重写
- hashCode、equals、==
- equals == hashcode
- equals == hashcode
- equals,==,hashcode
- equals 和 ==, equals 和 hashcode
- Java的HashCode,Equal和==
- Java的HashCode,Equal和==
- equal 、a==b 和 hashcode
- Java的HashCode,Equal和==
- java hashcode、equal、==总结
- Java中 == equal hashcode
- equals ,== hashCode方法
- HashCode,equals 和 ==
- 关于“==”、equals()、hashCode()
- 如何在myseclipse中修改Servlet模板 ,使模板变得更简洁!
- Oracle 计算两个日期的时间差
- int *p=0 与 int *p=NULL 的区别?
- IOS内存管理
- Java 将对象按某属性排列
- equal | == | equals | hashCode
- IKanalyzer分词实例并统计词频
- 安卓隐藏虚拟按键
- 网页解析
- 图片抓取
- 简单表达式翻译器
- Java生成API
- Java逻辑运算
- Java移位运算机制
原创粉丝点击
热门IT博客