List、Map、Set三個接口,存取元素時,各有什麼特點?

ListSet都是單列元素的集合,它們有一個功共同的父接口Collection

Set裏面不允許有重複的元素,

存元素:add方法有一個boolean的返回值,當集合中沒有某個元素,此時add方法可成功加入該元素時,則返回true;當集合含有與某個元素equals相等的元素時,此時add方法無法加入該元素,返回結果爲false

取元素:沒法說取第幾個,只能以Iterator接口取得所有的元素,再逐一遍歷各個元素。

 

List表示有先後順序的集合

存元素:多次調用add(Object)方法時,每次加入的對象按先來後到的順序排序,也可以插隊,即調用add(int index,Object)方法,就可以指定當前對象在集合中的存放位置。

取元素:方法1Iterator接口取得所有,逐一遍歷各個元素

        方法2調用get(index i)來明確說明取第幾個。

 

Map雙列的集合,存放用put方法:put(obj key,obj value),每次存儲時,要存儲一對key/value,不能存儲重複的key,這個重複的規則也是按equals比較相等。

取元素:用get(Object key)方法根據key獲得相應的value

        也可以獲得所有的key集合,還可以獲得所有的value集合,

        還可以獲得keyvalue組合成的Map.Entry對象的集合。

 

List以特定次序來持有元素,可有重複元素。Set 無法擁有重複元素,內部排序。Map 保存key-value值,value可多值。

發佈了16 篇原創文章 · 獲贊 36 · 訪問量 6萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章