專案中我用到的list集合主要是arraylist以及hashset,他們全都是繼承自collection介面;
list底層就是陣列(也就是說可以根據下標來拿到list中的元素),特點是元素有序放入,元素可以有重複,元素可以為null;可以使用for迴圈遍歷,也可以使用迭代器。
hashset是基於雜湊表實現的,元素無序放入,放入的值可以為null,但是只能有乙個null,因為hashset的元素是不可重複的;set取值只能使用迭代器或者使用foreach遍歷,因為它無序,所以不能依照下標取值。
下面直接上**,更直觀的發現兩者的不同
迴圈list集合元素的**示例如下:
public static void main(string args)
}
輸出結果為:
list集合裡第0個的值為:飛機
list集合裡第1個的值為:坦克
list集合裡第2個的值為:大炮
foreach遍歷set集合元素的**如下:(與list集合放入元素的順序一致)
public static void main(string args)
}
輸出結果為:
得到的set集合第1個的值為大炮
得到的set集合第2個的值為飛機
得到的set集合第3個的值為坦克
從**可以看出set集合與list集合最大的區別就是set集合的元素儲存是無序的不可重複的,而list集合的元素儲存是有序的可重複的,和陣列一樣可以根據下標取值;剩下的存null值大家可以自己試驗一下,在這就不多做演示了。---純屬原創,不喜勿噴。 集合框架 List與Set
所有的集合框架並不存放真正的物件,而是持有物件的引用 list與set都繼承自collection list的實現類 arraylist,linklist,vector set的實現類 hashset,linkedhashset,sortset 介面 treeset 實現sortset 首先介紹一下...
List集合 Set集合
一 請簡述list介面的特點。v 它是乙個元素訪問有序的集合。例如,存元素的順序是11 22 33。那麼集合中,元素的儲存就是按照11 22 33的順序完成的 v 它是乙個帶有索引的集合,通過索引就可以精確的操作集合中的元素 與陣列的索引是乙個道理 v 集合中可以有重複的元素,通過元素的equals...
Java中集合類List與Set的區別
一 list list介面有兩個重要的類 arraylist與linkedlist arraylist可以認為是長度可變的陣列,方便隨機訪問 index linkedlist以鍊錶的形式儲存,進行插入刪除操作時比較方便 以arraylist為例,由於是長度可變的陣列,那麼自然擁有陣列的特性 1 利用...