關(guān)于testModify()方法的問題
第一,想知道標(biāo)注的第一處while判斷的true是什么?應(yīng)該不是student==null為true吧?
第二,標(biāo)注的第二處,不是說map里面key值是不可重復(fù)的嗎?不應(yīng)該先remove原本key為stuID的entry對(duì)象再put一個(gè)新的嗎?
第一,想知道標(biāo)注的第一處while判斷的true是什么?應(yīng)該不是student==null為true吧?
第二,標(biāo)注的第二處,不是說map里面key值是不可重復(fù)的嗎?不應(yīng)該先remove原本key為stuID的entry對(duì)象再put一個(gè)新的嗎?
2020-03-16
舉報(bào)
2020-03-17
while中true是指永遠(yuǎn)是true死循環(huán),但是它的循環(huán)結(jié)束條件是break;如果判斷沒有對(duì)應(yīng)學(xué)生會(huì)用continue繼續(xù)循環(huán),循環(huán)跟student為不為null無關(guān)。?
HashMap保存數(shù)據(jù)的過程為:首先判斷key是否為null,若為null,則直接調(diào)用putForNullKey方法。若不為空則先計(jì)算key的hash值,然后根據(jù)hash值搜索在table數(shù)組中的索引位置,如果table數(shù)組在該位置處有元素,則通過比較是否存在相同的key,若存在則覆蓋原來key的value,否則將該元素保存在鏈頭(最先保存的元素放在鏈尾)。?
在這簡(jiǎn)單來說是value被覆蓋了。
2021-06-01
第一個(gè)問題 true為死循環(huán)
第二個(gè)問題 key不可以重復(fù),但是它會(huì)對(duì)比值,會(huì)出現(xiàn)覆蓋。