keySet()的返回類型是Set,values()的返回類型是collection,而entrySet()的是Set。Map的方法的返回類型為什么是其他接口呢?
1 回答
已采納

Genment
TA貢獻(xiàn)43條經(jīng)驗(yàn) 獲得超25個(gè)贊
map 的數(shù)據(jù)(元素)是鍵值對(duì)的形式的,每個(gè)數(shù)據(jù)(元素/鍵值對(duì))都有兩個(gè)數(shù)據(jù),一個(gè)表示key,一個(gè)表示value。
當(dāng)需要獲取 map 中所有的 key 或者 value 的時(shí)候,肯定不可能再返回鍵值對(duì)的數(shù)據(jù)了,因?yàn)闊o(wú)論是 key 還是 value,都是單個(gè)數(shù)據(jù)的,那么一些單個(gè)數(shù)據(jù)的數(shù)據(jù)放在一起,不就是類似于數(shù)組這樣的集合嗎?
如果還是比較難理解的話,你可以想象一下,一個(gè)兩列的表格,第一列是學(xué)號(hào)(key),第二列是姓名(value),
keySet() 返回的就是所有的學(xué)號(hào),values() 返回的時(shí)所有的姓名,而 entrySet() 返回的是所有鍵值對(duì)的集合。
添加回答
舉報(bào)
0/150
提交
取消