list和set的區別

2021-10-13 18:40:16 字數 345 閱讀 6855

list和set都實現同乙個介面,

list是有序集合

arraylist和linkedlist都實現了list介面,arraylist是線性結構,根據下標對資料進行操作,arraylist查詢快,增刪慢。

linkedlist是鍊錶結構,增加和刪除快,查詢慢。

set是無序的

hashset和treeset都實現了set介面,內容不可重複,hashset底層是雜湊表,通過hashcode和eq來保證資料的一致性。

treeset底層是二叉樹,根據比較的返回值確定元素的一致性。

linkedhashset:底層是鏈性+二叉樹+雜湊表。由鍊錶保證元素有序,雜湊表保證元素唯一

list和set的區別

集合list作為佇列來使用,先存入的資料會被先取出 listlist new arraylist list.add 1 list.add 2 list.add 3 取出來的結果為 1,2,3 集合set作為堆疊來使用,先存入的資料會後取出 setset new hashset set.add 1 s...

list和set的區別

list的特點 list元素有放入順序,且是可以重複的。public class listtest for string str list iteratorit list.iterator while it.hasnext set的特點 set是無放入順序的,且不能重複的。set取值不能使用普通fo...

list和set的區別

1 定義 list 列表,表達形式 或者list 有序,通過索引值進行查詢 set 集合,表達形式set 無序自動去重 2 常見應用方法 list 依據索引值,進行內部的增刪改查作業 set 集合的交集,並集,差集 myset a set 1,2,3,4,5 print type myset a s...