最近中文字幕高清中文字幕无,亚洲欧美高清一区二区三区,一本色道无码道dvd在线观看 ,一个人看的www免费高清中文字幕

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定

為何要重寫Course下的hashCode()和equals()方法,我這樣理解對(duì)不對(duì)?

本來HashSet下的contains()方法是比較student.courses下的元素的哈希碼與course2的哈希碼是否一樣,這當(dāng)然是不一樣的所以返回的是false。而重寫之后,是比較student.courses下的元素的name屬性的哈希碼與course2.name的哈希碼是否一樣,它們是一樣的,所以返回的是true。

這樣理解對(duì)么?一直都一知半解的。。。

正在回答

3 回答

你理解了嗎 ?可以給我說說嗎 ? 我不理解對(duì)于List與Set而言,都是遍歷一邊,分別與courses2.name進(jìn)行equals ??

List不需要重寫 ?但是Set就需要重寫?

這是我理解的hashcode與equals ? (hash比較一個(gè)域,equals比較域中一個(gè)元素.equals為true,hash一定為true;

equals為false,hash不一定為false) ?

在此 contains先比較hash,后比較equals( hash為true,equals不一定為true;hash為false,equals一定為false)?

這是我理解的不知道對(duì)不對(duì) ? ? ?

0 回復(fù) 有任何疑惑可以回復(fù)我~

java自帶的hashCode()和equals()方法定義比較簡(jiǎn)單,很多時(shí)候不適用我們使用的場(chǎng)合,這兩個(gè)方法在哪里重寫都一樣,只要是在這個(gè)包下的。你使用contains()方法時(shí)候他需要調(diào)用者兩個(gè)方法,他會(huì)優(yōu)先使用重寫的hashCode()和equals()方法

0 回復(fù) 有任何疑惑可以回復(fù)我~

這樣理解對(duì)的呢???

0 回復(fù) 有任何疑惑可以回復(fù)我~

舉報(bào)

0/150
提交
取消

為何要重寫Course下的hashCode()和equals()方法,我這樣理解對(duì)不對(duì)?

我要回答 關(guān)注問題
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)