第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

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

在這章節(jié)中重寫 equals 的作用,是什么,在哪里有掉用過?

提個(gè)問題: item實(shí)體類中重寫的的equals方法不知道哪里有掉用過,,,

正在回答

2 回答

public?boolean?addGoodsInCart(items?item,?int?number)?{
		if?(goods.containsKey(item))?{
			goods.put(item,?goods.get(item)?+?number);
		}?else?{
			goods.put(item,?number);
		}
		calTotalPrice();
		return?true;
	}

map和set集合比較是否包含某一個(gè)元素,需要重寫equals和hashcode方法。

list集合比較是否包含某一個(gè)元素,需要重寫equals方法。

建議再好好學(xué)習(xí)下泛型,基礎(chǔ)知識(shí)不夠牢固。

如果不重新寫,goods會(huì)把兩個(gè)同樣的item給添加進(jìn)來。因?yàn)檫@兩個(gè)item雖然屬性相同但其實(shí)是不同的對(duì)象。

3 回復(fù) 有任何疑惑可以回復(fù)我~
#1

Angular_Dracula 提問者

非常感謝!確實(shí)如此~
2016-03-04 回復(fù) 有任何疑惑可以回復(fù)我~
#2

iMcLaren

看了hashmap的源代碼。里面寫著使用containsKey()方法后可以覆蓋原來的的相同鍵值對(duì)(If the map previously contained a mapping for the key, the old) 就是看不懂哪一段代碼表示調(diào)用這個(gè)方法后可以使覆蓋enable。。。還是圖樣。。。我在樓下貼一下代碼吧。。
2016-05-12 回復(fù) 有任何疑惑可以回復(fù)我~
#3

小小徐life

逗比 原因是containsKey() 方法里面調(diào)用了hsahCode() equals()方法; 沒看源代碼就出來裝逼了 這樣不好
2016-05-26 回復(fù) 有任何疑惑可以回復(fù)我~
#4

慕神7267176

為什么list集合只需要重寫equals()方法,難道就不需要重寫hashcode()方法來保證地址一樣嗎
2016-11-07 回復(fù) 有任何疑惑可以回復(fù)我~
查看1條回復(fù)
????final?Node<K,V>?getNode(int?hash,?Object?key)?{
????????Node<K,V>[]?tab;?Node<K,V>?first,?e;?int?n;?K?k;
????????if?((tab?=?table)?!=?null?&&?(n?=?tab.length)?>?0?&&
????????????(first?=?tab[(n?-?1)?&?hash])?!=?null)?{
????????????if?(first.hash?==?hash?&&?//?always?check?first?node
????????????????((k?=?first.key)?==?key?||?(key?!=?null?&&?key.equals(k))))
????????????????return?first;
????????????if?((e?=?first.next)?!=?null)?{
????????????????if?(first?instanceof?TreeNode)
????????????????????return?((TreeNode<K,V>)first).getTreeNode(hash,?key);
????????????????do?{
????????????????????if?(e.hash?==?hash?&&
????????????????????????((k?=?e.key)?==?key?||?(key?!=?null?&&?key.equals(k))))
????????????????????????return?e;
????????????????}?while?((e?=?e.next)?!=?null);
????????????}
????????}
????????return?null;
????}

????/**
?????*?Returns?<tt>true</tt>?if?this?map?contains?a?mapping?for?the
?????*?specified?key.
?????*
?????*?@param???key???The?key?whose?presence?in?this?map?is?to?be?tested
?????*?@return?<tt>true</tt>?if?this?map?contains?a?mapping?for?the?specified
?????*?key.
?????*/
????public?boolean?containsKey(Object?key)?{
????????return?getNode(hash(key),?key)?!=?null;
????}


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

舉報(bào)

0/150
提交
取消

在這章節(jié)中重寫 equals 的作用,是什么,在哪里有掉用過?

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

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

幫助反饋 APP下載

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

公眾號(hào)

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