Java知識點總結(Java容器-Collection)
@(Java知識點總結)[Java, Java容器, JavaCollection]java
[toc]數組
Collection
Collection函數庫是java.util包下的一些接口和類,類是用來產生對象存放數據用的,而接口是訪問數據的方式。安全
與數組的區別:函數
- 數組的容量是有限制的,而Collection庫沒有限制,它的容量能夠自動調節。
- Collection函數庫只能用來存放對象,而數組沒有這樣的限制

Collection接口是Collection層次結構中的根接口,存放於其中的數據,被稱爲元素(element)spa
- List接口:有序可重複
- Set接口:無序不可重複
- Map接口:存放鍵值對,根據鍵找到值(Value),鍵(Key)不能重複。(解決經過一個對象找到另外一個對象)
集合的具體實現類:線程

- ArrayList:底層實現是數組,因此查詢塊,插入、修改刪除速度慢。線程不安全,效率高。
- LinkedList:底層實現是鏈表,因此查詢慢,插入、修改、刪除速度快。線程不安全,效率高。
- Vector:底層也是數組實現,線程安全,效率低
- HashMap:效率高,線程不安全。鍵能夠有一個null,值能夠有多個null。
- HashTable:效率低,線程安全。任何非null對象均可以用做爲鍵和值
- TreeMap:
- HashSet:底層是經過hashMap實現的。Set的不可重複就是利用了Map裏面的鍵對象不可重複
- TreeSet:
全部實現了Coll接口的容器類都有一個iterator方法用以返回一個實現了Iterator接口的對象對象