List,Set,Map 詳解

老婆保佑扬霜,代碼無BUG

前言

java語言郭计,博大精深啊辨图,好好擼一擼JAVA編程思想


目錄

  • 對比1: 是否實現Collection
  • 對比2:List 和Set對比
  • 對比3:ArrayList與LinkedList
  • 對比4:HashSet與Treeset
  • Collection接口的方法
  • iterator()方法

對比

對比1: 是否實現Collection

類型 是否實現Collection
Map NO
List YES
set YES

對比2:List 和Set對比

類型 元素可重復 是否有序 檢索元素效率 刪除和插入效率
List YES YES
set NO NO
  • Set:插入和刪除不會引起元素位置改變膘婶。
  • List:和數組類似,List可以動態(tài)增長会放,因為會引起其他元素位置改變顷蟆。

對比3:ArrayList與LinkedList

類型 查詢效率 插入和刪除操作效率
Arraylist
LinkedList
  • ArrayList是實現了基于動態(tài)數組的數據結構,因為地址連續(xù)诫隅,一旦數據存儲好了,查詢操作效率會比較高(在內存里是連著放的)帐偎。因為地址連續(xù)阎肝, ArrayList要移動數據,所以插入和刪除操作效率比較低。
  • LinkedList基于鏈表的數據結構,地址是任意的肮街,所以在開辟內存空間的時候不需要等一個連續(xù)的地址,對于新增和刪除操作add和remove判导,LinedList比較占優(yōu)勢嫉父。LinkedList 適用于要頭尾操作或插入指定位置的場景,因為LinkedList要移動指針,所以查詢操作性能比較低眼刃。

對比4:HashSet與Treeset

類型 算法 是否可以存放null 適用場景
HashSet 哈希表 不允許 適用于Map中插入绕辖、刪除和定位元素
Treeset 二差樹 只能放入一個null 適用于按自然順序或自定義順序遍歷鍵(key)。

Collection接口的方法

方法 說明
boolean add(Object o) 向集合中加入一個對象的引用
void clear() 刪除集合中所有的對象擂红,即不再持有這些對象的引用
boolean isEmpty() 判斷集合是否為空
boolean contains(Object o) 判斷集合中是否持有特定對象的引用
Iterartor iterator() 返回一個Iterator對象仪际,可以用來遍歷集合中的元素
boolean remove(Object o) 從集合中刪除一個對象的引用
int size() 返回集合中元素的數目
Object[] toArray() 返回一個數組,該數組中包括集合中的所有元素

Collection沒有get()方法來取得某個元素。只能通過iterator()遍歷元素树碱。

方法 說明
hasNext() 判斷集合中元素是否遍歷完畢肯适,如果沒有,就返回true
next() 返回下一個元素
remove() 從集合中刪除上一個有next()方法返回的元素成榜。
?著作權歸作者所有,轉載或內容合作請聯系作者
  • 序言:七十年代末框舔,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子赎婚,更是在濱河造成了極大的恐慌刘绣,老刑警劉巖,帶你破解...
    沈念sama閱讀 216,591評論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件挣输,死亡現場離奇詭異纬凤,居然都是意外死亡,警方通過查閱死者的電腦和手機撩嚼,發(fā)現死者居然都...
    沈念sama閱讀 92,448評論 3 392
  • 文/潘曉璐 我一進店門停士,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人绢馍,你說我怎么就攤上這事向瓷。” “怎么了舰涌?”我有些...
    開封第一講書人閱讀 162,823評論 0 353
  • 文/不壞的土叔 我叫張陵猖任,是天一觀的道長。 經常有香客問我瓷耙,道長朱躺,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,204評論 1 292
  • 正文 為了忘掉前任搁痛,我火速辦了婚禮长搀,結果婚禮上,老公的妹妹穿的比我還像新娘鸡典。我一直安慰自己源请,他們只是感情好,可當我...
    茶點故事閱讀 67,228評論 6 388
  • 文/花漫 我一把揭開白布彻况。 她就那樣靜靜地躺著谁尸,像睡著了一般。 火紅的嫁衣襯著肌膚如雪纽甘。 梳的紋絲不亂的頭發(fā)上良蛮,一...
    開封第一講書人閱讀 51,190評論 1 299
  • 那天,我揣著相機與錄音悍赢,去河邊找鬼决瞳。 笑死货徙,一個胖子當著我的面吹牛,可吹牛的內容都是我干的皮胡。 我是一名探鬼主播痴颊,決...
    沈念sama閱讀 40,078評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼胸囱!你這毒婦竟也來了祷舀?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 38,923評論 0 274
  • 序言:老撾萬榮一對情侶失蹤烹笔,失蹤者是張志新(化名)和其女友劉穎裳扯,沒想到半個月后,有當地人在樹林里發(fā)現了一具尸體谤职,經...
    沈念sama閱讀 45,334評論 1 310
  • 正文 獨居荒郊野嶺守林人離奇死亡饰豺,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 37,550評論 2 333
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現自己被綠了允蜈。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片冤吨。...
    茶點故事閱讀 39,727評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖饶套,靈堂內的尸體忽然破棺而出漩蟆,到底是詐尸還是另有隱情,我是刑警寧澤妓蛮,帶...
    沈念sama閱讀 35,428評論 5 343
  • 正文 年R本政府宣布怠李,位于F島的核電站,受9級特大地震影響蛤克,放射性物質發(fā)生泄漏捺癞。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,022評論 3 326
  • 文/蒙蒙 一构挤、第九天 我趴在偏房一處隱蔽的房頂上張望髓介。 院中可真熱鬧,春花似錦筋现、人聲如沸唐础。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,672評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽彻犁。三九已至,卻和暖如春凰慈,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背驼鹅。 一陣腳步聲響...
    開封第一講書人閱讀 32,826評論 1 269
  • 我被黑心中介騙來泰國打工微谓, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留森篷,地道東北人。 一個月前我還...
    沈念sama閱讀 47,734評論 2 368
  • 正文 我出身青樓豺型,卻偏偏與公主長得像仲智,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子姻氨,可洞房花燭夜當晚...
    茶點故事閱讀 44,619評論 2 354

推薦閱讀更多精彩內容