本月博客排行
年度博客排行
-
第1名
青否云后端云 -
第2名
zw7534313 -
第3名
大家都说我很棒 - wy_19921005
- liyihz2008
- gengyun12
- e_e
- hbxflihua
- luxurioust
- zysnba
- robotmen
- Alsmile
- gaozzsoft
- jywhltj
- cpongo1
- qepwqnp
- 解宜然
- gashero
- sichunli_030
- cuityang
- vipbooks
- fantaxy025025
- wallimn
- ssydxa219
- gdpglc
- javashop
- ranbuijj
- jickcai
- hanbaohong
- johnsmith9th
- appalese
- gaojingsong
- weiyides
- 淡看人生
- java-007
- zhangyi0618
- AVI
- laiyangdeli
- liunancun
- xpenxpen
- 龙哥IT
- nychen2000
- lemonhandsome
- ouanui
- conkeyn
- jveqi
- panshunchang
- MagicLee
- wjianwei666
- tanling8334
最新文章列表
HASHCODE认知
说实话,工作以来,hashcode一直知道,但是怎么用,为什么要重写重来没深究过,这次搞明白了,也分享一下。
equals方法在对象比较的时候相信大家都重写过,但是重写equals的同时重写hashcode方法,我所知道的大多数人是没有作这个操作的。
首先来说下,为什么要重写equals,如果不重写,那么默认比较的是对象的引用
public class Test3 {
pr ...
hashCode
说明:
本系列博客是本人在工作中遇到的一些问题的整理,其中有些资料来源网络博客,有些信息来自出版的书籍,掺杂一些个人的猜想及验证,总结,主要目的是方便知识的查看,并非纯原创。本系列博客会不断更新。原创不容易,支持原创。对于参考的一些其他博客,会尽量把博客地址列在博客的后面,以方便知识的查看。
本篇博客可以看做是《Effective Java中文版
Java 中可变hashcode的隐患
为识别对象,JDK为每个Object类都定义了一个hashcode,Object的类的hashcode是根据对象的内存地址做hash算法得出来的,String类则自己重写了hashcode()方法,是根据字符串的每个字符做算法累加起来的,Integer在直接返回value的值。 而很多时候,对于应用系统的一些类(Java Bean),是要根据属性来计算hashcode而非内存地址,就像Stri ...
hashCode规则
摘自Effective Java
1. Store some constant nonzero value, say, 17, in an int variable called result.
2. For each significant field f in your object (each field taken into account by the
equals method, tha ...