list與set、map區別及適用場景
1、list,set都是繼承自collection介面,map則不是
2、list特點:元素有放入順序,元素可重複 ,
set特點:元素無放入順序,元素不可重複,重複元素會覆蓋掉,(注意:元素雖然無放入順序,但是元素在set中的位置是有該元素的hashcode決定的,其位置其實是固定的,加入set 的object必須定義equals()方法 ,另外list支援for迴圈,也就是通過下標來遍歷,也可以用迭代器,但是set只能用迭代,因為他無序,無法用下標來取得想要的值。)
3.set和list對比:
set:檢索元素效率低下,刪除和插入效率高,插入和刪除不會引起元素位置改變。
list:和陣列類似,list可以動態增長,查詢元素效率高,插入刪除元素效率低,因為會引起其他元素位置改變。
4.執行緒安全集合類與非執行緒安全集合類
linkedlist、arraylist、hashset是非執行緒安全的,vector是執行緒安全的;
hashmap是非執行緒安全的,hashtable是執行緒安全的;
stringbuilder是非執行緒安全的,stringbuffer是執行緒安全的。
JAVA集合小結
有序集合 集合裡元素可以根據key和index進行訪問 無序集合 集合裡面的元素只能遍歷 有序集合在屬性的增加,刪除和修改擁有較好的效能表現。無序集 set 有序集 list map 所以,凡是實現set的abstractset,copyonwritearrayset,enumset,hashset...
Java 集合小結3
集 set 是最簡單的一種集合,它的物件不按特定方式排序,只是簡單的把物件加入集合中,就像往口袋裡放東西。對集中成員的訪問和操作是通過集中物件的引用進行的,所以集中不能有重複物件。集也有多種變體,可以實現排序等功能,如treeset,它把物件新增到集中的操作將變為按照某種比較規則將其插入到有序的物件...
java集合與陣列小結
一 arraylist和linkedlist的區別 arraylist 陣列結構 linkedlist 鍊錶結構 優點查詢速度快 新增和刪除的速度快 缺點新增和刪除的速度慢 查詢速度慢 不適合查詢操作 二 陣列array和集合arraylist的區別 陣列 array 集合 arraylist 儲存...