hashCode 的常规协定是:
2024-08-30 07:11:44
hashCode 的常规协定是:
. 在 Java 应用程序执行期间,在同一对象上多次调用 hashCode 方法时,必须一致地返回相同的整数,前提是对象上 equals 比较中所用的信息没有被修改。从某一应用程序的 一次执行到同一应用程序的另一次执行,该整数无需保持一致。
. 如果根据 equals(Object) 方法,两个对象是相等的,那么在两个对象中的每个对象上调用 hashCode 方法都必须生成相同的整数结果。
. 以下情况不 是必需的:如果根据 equals(java.lang.Object) 方法,两个对象不相等,那么在两个对象中的任一对象上调用 hashCode 方法必定会生成不同的整数结果。但是 ,程序员应该知道,为不相等的对象生成不同整数结果可以提高哈希表的性能。
实际上,由 Object 类定义的 hashCode 方法确实会针对不同的对象返回不同的整数。(这一般是通过将该对象的内部地址转换成一个整数来实现的,但是 JavaTM 编程语言不需要这种实现技巧。)
最新文章
- Linux系统之压缩、解压缩,vi编辑器,系统初始化服务和系统监控
- Jsoup:解决java.net.UnknownHostException的问题
- GitHub进一步了解
- Airbnb创始人:屌丝的逆袭之路
- WIN32和Kernel)直接读写硬盘扇区
- 简单的代码实现的炫酷navigationbar
- (转)js正则表达式之中文验证
- HttpWebRequest 抓取页面异常处理办法
- RecyclerSwipeAdapterDemo【使用AndroidSwipeLayout用于列表项侧滑功能】
- Angularjs中config中置入以下拦截器
- Java知多少(中)
- git fetch 、git pull 与 git pull --rebase
- eclipse上搭建mybatis
- Asp.Net_Session跟Cookie的记住登陆名
- C# 队列(Queue)解决简单并发
- js的数组操作相关(BigTree*)
- python中面向切片编程(AOP)和装饰器
- getField()与getDeclaredField()的区别
- springmvc接收date类型参数
- Hibernate5笔记3--详解Hibernate的API
热门文章
- [转载]C++名字空间
- QuickJS 快速入门 (QuickJS QuickStart)
- spring--分类索引
- MyBatis3_[tp-26-27]_映射文件_select_返回List_记录封装Map:返回单个元素的Map或者整体Map集合
- redis在本地进行启动的方式
- Robot Framework--RIDE面板与库的说明
- archlinux 使用 postgresql
- ASP.NET MVC 入门5、View与ViewData
- redis--基于内存的高速缓存,NoSql的典型代表
- Codeforces Round #533 (Div. 2) D. Kilani and the Game(BFS)