**** 集合的一些技巧:
* 需要唯一嗎?
* 需要:set
* 需要制定順序:
* 需要:treeset
* 不需要:hashset
* 但是想要乙個和儲存一致的順序(有序):linkedhashset
* 不需要:list
* 需要頻繁增刪嗎:
* 需要:linkedlist
* 不需要:arraylist
** 如何記錄每乙個容器結構和所屬的體系呢?
* 看名字
* list
* |---arraylist
* |---linkedlist
* set
* |---hashset
* |---treeset**
* 字尾名就是該集合所屬的體系
* 字首名就是該集合 的資料結構
* 看到array:就要想到陣列,就要想到查詢快,有角標
* 看到link:就要想到鍊錶,就要想到增刪快,就要想到add,get ,remove+first last的方法
* 看到hash:就要想到雜湊表,就要想到唯一性,就要想到元素需要覆蓋hashcode方法和equals方法
* 看到tree:就要想到二叉樹,就要想要排序,就要想到兩個介面comparable,compatator
** 而且通常這些常用 的集合容器都 是不同步的。
*
對JAVA中集合的總結
1 集合 collection 單列集合 list 有序,可重複 arraylist 底層資料結構是陣列,查詢快,增刪慢 執行緒不安全,效率高 vector 底層資料結構是陣列,查詢快,增刪慢 執行緒安全,效率低 linkedlist 底層資料結構是鍊錶,查詢慢,增刪快 執行緒不安全,效率高 set...
java中集合詳解
一 集合 是一種儲存資料的手段,一次可以儲存多個值 二 補充 短期儲存 rom 一旦計算機關閉,儲存的資料就會消失如 物件,變數,陣列,集合 長期儲存 ram 直接儲存到硬碟上,可以長久的儲存,不會隨著計算機的關閉而消失,如 各種檔案,txt,doc,png,mp4 三 學習集合 1.陣列 可以儲存...
java中集合set去重使用
第一種,list,list用set去重時,無需重寫equals方法 listlist new arraylist for int i 0 i 10 i list.add 3 list.add 5 for int m 0 m list.size m setset new hashset for int...