两个对象值相同(x.equals(y) == true),但却可有不同的hash code,这句话对不对
答:不对,有相同的 hash code这是java语言的定义:1) 对象相等则hashCode一定相等;2) hashCode相等对象未必相等
hashCode 的常规协定是: (1)在 Java 应用程序执行期间,在对同一对象多次调用 hashCode 方法时,必须一致地返回相同的整数,前提是将对象进行 equals 比较时所用的信息没有被修改。从某一应用程序的一次执行到同一应用程序的另一次执行,该整数无需保持一致。 (2)如果根据 equals(Object) 方法,两个对象是相等的,那么对这两个对象中的每个对象调用 hashCode 方法都必须生成相同的整数结果。 (3)如果根据 equals(java.lang.Object) 方法,两个对象不相等,那么对这两个对象中的任一对象上调用 hashCode 方法不 要求一定生成不同的整数结果。但是,程序员应该意识到,为不相等的对象生成不同整数结果可以提高哈希表的性能。
两个对象值相同(x.equals(y) == true),但却可有不同的hash code,这句话对不对相关推荐
- 面试题:两个对象值相同(x.equals(y) == true),但却可有不同的hash code,这句话对不对?
两个对象值相同(x.equals(y) == true),但却可有不同的hash code,这句话对不对? 对.如果是String等类的话,必须有相同的hashcode: 但若是这个类重写了hashc ...
- 【Java面试题】41 两个对象值相同(x.equals(y) == true),但却可有不同的hash code,这句话对不对?...
对. 如果对象要保存在HashSet或HashMap中,它们的equals相等,那么,它们的hashcode值就必须相等. 如果不是要保存在HashSet或HashMap,则与hashcode没有什么 ...
- hashCode之一--两个对象值相同,有相同的hash code
两个对象值相同(x.equals(y) == true),则一定有相同的hash code. 这是java语言的定义: 因为:Hash,一般翻译做"散列",也有直接音译为&quo ...
- 两个对象值相同hashcode是否相同
不对,如果两个对象 x 和 y 满足 x.equals(y) == true,它们的哈希码(hashCode)应当相同. Java 对于 eqauls 方法和 hashCode 方法是这样规定的: ( ...
- java比较两个对象重写,不重写equals进行两个对象间的深度比较
背景 我们知道在Java中比较两个对象是否相同,可以有多种方法,最常见的就是 == 和 equals 方法.但是由于==对比的是对象引用本身,因此重写equals才是最常用和可靠的比较两个对象是否相同 ...
- angular判断两个对象值是否相等,包含对象深层判断,深拷贝的两个对象
angular public isEqual(obj1:any,obj2:any):boolean{if(!(obj1 instanceof Object) || !(obj2 instanceof ...
- java问题,(x.equals(y) == true)有相同的hashCode 应该是不一定
这个问题在equals没有被重写的情况下是成立 的,如果说x,y是String类型的是没有问题 虽然String类型重写了equals方法但是String比较的是只是字符串值, 对于对象就不一定了 如 ...
- java比较两个对象_java判断两个对象是否相等的方法
java判断两个对象是否相等的方法 发布时间:2020-06-25 13:48:38 来源:亿速云 阅读:197 作者:Leah 这期内容当中小编将会给大家带来有关java判断两个对象是否相等的方法, ...
- java怎么判断类相同_java中如何判定两个对象属于同一类 两个对象是不是类的相同实例,即用“===”是什么意思...
导航:网站首页 > java中如何判定两个对象属于同一类 两个对象是不是类的相同实例,即用"==="是什么意思 java中如何判定两个对象属于同一类 两个对象是不是类的相同实 ...
最新文章
- GBDT和GNN结合,结果怎么样?
- 【Splay】洛谷3372 【模板】线段树 1
- 2021年春季学期-信号与系统-第十四次作业参考答案-第三小题参考答案
- 多校 Babelfish
- 告诉你,我认识的上网的方式
- Python unittest中初始化固件setUp和销毁固件tearDown详解
- 宿主机mac os无法连接到虚拟机centos
- Linux 命令(111)—— alias 命令(builtin)
- zabbix-自定义键值监控网卡IN、OUT流量
- 使用网易云api、Vue 和swiper实现轮播图 (音乐app项目-第2步)
- IT行业必须知道的基础知识
- spring aop原理
- 高一计算机算法教案,高中算法与程序设计教案
- jQuery常用功能大全
- QT 之QPainter画点
- Keytool生成数字证书 + Tomcat https 配置
- android高德方向,Android高德地图填坑
- oracle如何恢复表中删除的数据?
- Linux硬盘空间爆满后如何清理
- ks值和auc值的关系
热门文章
- 数字大写 php 代码,PHP 中文大写数字 转成 数字代码
- 我的世界服务器怎么修改唱片,我的世界怎么修改唱片唱片音乐修改教程
- 有衬线字体和无衬线字体。
- r语言 怎么把字调大_R语言 如何为图片添加文字说明(转载)
- 配置gpgpu-sim——基于ubuntu12.04LTS
- 【论文阅读】【3d目标检测】Behind the Curtain: Learning Occluded Shapes for 3D Object Detection
- sql server嵌套查询
- 机械革命 Code Go 评测
- 二十一世纪大学英语读写基础教程学习笔记(原文)——10 - The Future(未来)
- SaaS从业者必读:一文读懂如何衡量与优化SaaS公司的关键指标