本月博客排行
-
第1名
龙儿筝 -
第2名
flashsing123 -
第3名
xiaoxinye - e_e
- johnsmith9th
- java_doom
- gaochunhu
- sichunli_030
- zw7534313
- 深蓝传说
年度博客排行
-
第1名
龙儿筝 -
第2名
宏天软件 -
第3名
青否云后端云 - wallimn
- vipbooks
- gashero
- wy_19921005
- benladeng5225
- fantaxy025025
- zysnba
- e_e
- javashop
- sam123456gz
- tanling8334
- arpenker
- kaizi1992
- xpenxpen
- lemonhandsome
- xiangjie88
- ganxueyun
- xyuma
- wangchen.ily
- jh108020
- Xeden
- johnsmith9th
- zxq_2017
- zhanjia
- jbosscn
- forestqqqq
- lzyfn123
- ajinn
- daizj
- wjianwei666
- ranbuijj
- 喧嚣求静
- sichunli_030
- kingwell.leng
- silverend
- lchb139128
- kristy_yy
- lich0079
- jveqi
- java-007
- sunj
- yeluowuhen
- lerf
- flashsing123
- lxguy
- zhangjijun
- lyndon.lin
最新文章列表
为什么在重写 equals方法的同时必须重写 hashcode方法
我们都知道Java语言是完全面向对象的,在java中,所有的对象都是继承于Object类。其 equals 方法比较的是两个对象的引用指向的地址,hashcode 是一个本地方法,返回的是对象地址值。Ojbect类中有两个方法equals、hashCode,这两个方法都是用来比较两个对象是否相等的。
为何重写 equals方法的同时必须重写 hashcode方法呢
先看看一个java的约定: ...
重写hashcode和equals方法的原则
public class Element {
String s;
int number;
public Element(int n) {
number=n;
}
public int hashCode(){
return s.hashCode()*number;
/* int result=17; 任意 ...