什么是哈希码(HashCode)
2024-09-10 09:06:10
什么是哈希码(HashCode)
在Java中,哈希码代表对象的特征。
例如对象 String str1 = “aa”, str1.hashCode= 3104
String str2 = “bb”, str2.hashCode= 3106
String str3 = “aa”, str3.hashCode= 3104
根据HashCode由此可得出str1!=str2,str1==str3
哈希码产生的依据:哈希码并不是完全唯一的,它是一种算法,让同一个类的对象按照自己不同的特征尽量的有不同的哈希码,但不表示不同的对象哈希码完全不同。也有相同的情况,看程序员如何写哈希码的算法。
下面给出几个常用的哈希码的算法。
1:Object类的hashCode.返回对象的内存地址经过处理后的结构,由于每个对象的内存地址都不一样,所以哈希码也不一样。
2:String类的hashCode.根据String类包含的字符串的内容,根据一种特殊算法返回哈希码,只要字符串内容相同,返回的哈希码也相
同。
3:Integer类,返回的哈希码就是Integer对象里所包含的那个整数的数值,例如Integer i1=new Integer(100),i1.hashCode的值就是100 。由此可见,2个一样大小的Integer对象,返回的哈希码也一样。
最新文章
- JS面向对象的程序设计
- json与jsonp的区别
- JS禁止WEB页面鼠标事件大全
- Linux下U盘变成只读
- (三)WebRTC手记之本地视频采集
- android中的权限(转)
- What Your Computer Does While You Wait
- Cocos2d-x 3.0标签类Label
- 提升资源利用率的MapReduce框架
- android_Activity生命周期功能
- js分页模板
- DOM对象和JQuery对象进行转换
- LVS实现负载均衡安装配置详解
- .Net Core 部署到IIS
- 2018.7.3 lnmp一键安装包无人值守版本 php7.2 + nginx1.14.0 + mariadb5.5 + centos7.1(1503) 环境搭建 + Thinkphp5.1.7 配置
- 解决运行nodejs代码Error: listen EADDRINUSE
- vscode 配置踩坑记
- 调用zabbix 分组api
- c#类 对象 构造函数 析构函数——面向对象
- f5双机配置
热门文章
- C#如何直接调用非托管代码
- AN2820 Driving bipolar stepper motors using a medium-density STM32F103xx microcontroller
- ElasticSearch入门 :Windows下安装ElasticSearch
- Mysql数据库大表归档操作
- Revit MEP API找到连接器连接的连接器
- 树莓派 Windows10 IoT Core 开发教程
- Spring主从数据库的配置和动态数据源切换原理
- xcode调试查看变量的值
- C#编程(二十六)----------泛型
- 【Elasticsearch】ES中时间查询报错:Caused by: ElasticsearchParseException[failed to parse date field [Sun Dec 31 16:00:00 UTC 2017] with format [yyyy-MM-dd HH:mm:ss||yyyy-MM-dd||epoch_millis]];