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

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

Map中元素不是無(wú)序的嗎?為什么我輸出是添加的順序是一樣的?

public?void?testPut(){
????????int?i=0;
????????Scanner?reader?=?new?Scanner(System.in);
????????while(i<3){
????????????System.out.print("請(qǐng)輸入學(xué)生ID:");
????????????String?stuId?=?reader.next();
????????????Student?st?=?students.get(stuId);
????????????if(st==null){
????????????????System.out.print("請(qǐng)輸入學(xué)生姓名:");
????????????????String?stuName=reader.next();
????????????????students.put(stuId,?new?Student(stuId,stuName));
????????????????System.out.println("成功添加學(xué)生:"+students.get(stuId).name);
????????????????i++;
????????????}else
????????????????System.out.println("學(xué)生ID已被占用!");
????????}
????}
public?void?testKeySet(){
????????Set<String>?stuIDs?=?students.keySet();
????????System.out.println("共有"+students.size()+"個(gè)學(xué)生");
????????for?(String?string?:?stuIDs)?{
????????????Student?st?=?students.get(string);
????????????System.out.println(st.id+":"+st.name);
????????}
????}


正在回答

3 回答

研究了一段時(shí)間后發(fā)現(xiàn)所謂無(wú)序,并非是輸出的結(jié)果每次會(huì)不一樣,而是放進(jìn)去之后沒(méi)有順序,

Map<String, Integer> m = new HashMap<>();

for(int i=0; i<10; i++) { ??

?m.put("key"+i, i);?

}?

System.out.println(m);

這段代碼就能看出來(lái),放進(jìn)去的時(shí)候是1-10,輸出的卻不是,但是輸出的結(jié)果卻是固定的,也就是說(shuō)沒(méi)有順序但是執(zhí)行結(jié)果缺一致,深入源碼發(fā)現(xiàn)其通過(guò)放入的對(duì)象hashcode計(jì)算出其索引,然后放入,也就是說(shuō)在這個(gè)時(shí)候順序就固定了,另外從他的遍歷方式能夠看出來(lái)是鏈表方式,使用next節(jié)點(diǎn)連接下一個(gè)數(shù)值,所以雖說(shuō)他是無(wú)序的,但執(zhí)行結(jié)果缺是唯一的

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

阿莫林西 提問(wèn)者

非常感謝!
2017-03-09 回復(fù) 有任何疑惑可以回復(fù)我~

你可以看看源碼,計(jì)算機(jī)怎么去存一個(gè)無(wú)序的東西或者怎么去存一個(gè)有序的東西,答案是把數(shù)按添加順序存進(jìn)去,有序的的東西會(huì)有明確的地址引用,也就是相對(duì)于數(shù)組的角標(biāo)。而無(wú)序只是把角標(biāo)隱去了而已,再不打亂內(nèi)部順序的情況,是不會(huì)破壞內(nèi)部的順序。

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

你多試幾次 ?看看

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

阿莫林西 提問(wèn)者

試了很多次都是一樣的
2017-03-04 回復(fù) 有任何疑惑可以回復(fù)我~

舉報(bào)

0/150
提交
取消

Map中元素不是無(wú)序的嗎?為什么我輸出是添加的順序是一樣的?

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

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

幫助反饋 APP下載

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

公眾號(hào)

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