集合 學習的簡單總結
阿新 • • 發佈:2019-02-19
集合總結
一、collection(單列集合)
list (存取有序,有索引,可以重複) ArrayList底層是陣列實現的,執行緒不安全,查詢和修改快,增刪比較慢(可以儲存重複,無序) Linkedlist 底層是連結串列實現的,執行緒不安全,增刪比較快,查詢比較慢 vector 底層是陣列實現的,執行緒安全的,增刪改查都慢 如果查詢和修改多,用ArrayList 如果增刪多,用linkedlist 如果都多,用ArayList set(存取無序,無索引,不可重複) HashSet 底層是雜湊演算法實現(開發時多用,效率較高)(可以去掉重複元素,無序) LinkedHashSet 底層是連結串列實現的,但是也可以保證元素唯一,和HashSet原理一樣 (有序,是唯一一個怎麼存就怎麼取的) TreeSet 底層是二叉樹演算法實現(面試時用到,幾種排序方式的區別) 。TreeSet儲存Integer型別的元素是可以用來對元素進行排序的(按字典順序),也可以保證元素的唯一(不可儲存重複)
二、Map(雙列集合)
HashMap 底層是雜湊演算法,針對鍵(開發中用到的比較多),(可以去掉重複元素,無序)
LinkedHashMap 底層是連結串列,針對鍵
TreeMap 底層是二叉樹演算法,針對鍵