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

為了賬號(hào)安全,請及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

Java 集合幀哇地圖輸出問題

Java 集合幀哇地圖輸出問題

肥皂起泡泡 2022-09-14 15:53:38
  String A="A";    String B="A";    String C= new String("A");    Map m1=new HashMap<String,String>();    m1.put(A,"A");    m1.put(B,"A");    m1.put(C,"A");    System.out.println(m1.size());為什么地圖大小是1,任何人都可以解釋工作,也可以解釋地圖大小如何是1???
查看完整描述

2 回答

?
滄海一幻覺

TA貢獻(xiàn)1824條經(jīng)驗(yàn) 獲得超5個(gè)贊

的鍵必須是唯一的。Map

因此,通過執(zhí)行 ,因?yàn)槟谔鎿Q與鍵 關(guān)聯(lián)的先前值。該方法檢查密鑰,如果實(shí)現(xiàn)是a,它將首先查找密鑰,然后再確認(rèn)等效性。m1.put(B, "anything");B = "A""A"equals()HashMaphashcode()

還有一些需要注意的事情,與此無關(guān)。Java嘗試對包含相同內(nèi)容的字符串進(jìn)行重復(fù)數(shù)據(jù)刪除(因?yàn)閍是不可變的,因此可以安全地執(zhí)行此操作)。因此,很可能并且實(shí)際上也會(huì)指向同一對象(盡管這取決于JVM)。MapStringString A = "A"String B = "A"

String C = new String("A");將強(qiáng)制它創(chuàng)建一個(gè)新對象,盡管最新的垃圾回收器也會(huì)對此進(jìn)行重復(fù)數(shù)據(jù)刪除,盡管它將是一個(gè)不同的包裝器對象,但內(nèi)部的緩沖區(qū)將被替換,以便它與其他對象相同。String


查看完整回答
反對 回復(fù) 2022-09-14
?
精慕HU

TA貢獻(xiàn)1845條經(jīng)驗(yàn) 獲得超8個(gè)贊

Java 字符串是不可變的,字符串的行為無法更改。每次進(jìn)行任何更改時(shí),它都會(huì)創(chuàng)建新的 String,而不是更新值。因此,此處的值“A”對于所有 String 對象都是相同的,對于所有三個(gè)對象,哈希代碼也是相同的。哈希圖中的所有三個(gè)值都指向相同的哈希代碼。


查看完整回答
反對 回復(fù) 2022-09-14
  • 2 回答
  • 0 關(guān)注
  • 103 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號(hào)

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