1. 程式人生 > >Java集合部分知識

Java集合部分知識

集合中的介面與類之間的關係如下圖所示:

其中藍色標註的為介面,紅色標註的為類。

具體如下:

1.Set介面表示的集合不能包含重複的元素;

2.HashSet:元素存放在Hash表中,元素數量較大時,訪問效率比線性列表快;

3.TreeSet:採用有序樹儲存集合中的元素,元素按照升序排序;

4.LinkedHashSet:採用Hash表和連結串列結合的結構儲存元素,既能保證元素的順序,存取效率也高;

5.List表示一種有序的集合,其中的元素可以重複;

6.ArrayList採用可大可小的陣列實現List介面,ArrayList物件會隨著元素的增加自動擴大,適合查詢,只能包含物件型別;

7.LinkedList採用連結串列結構實現List介面,插入和刪除方便,讀取速度慢一些;

8.Vector採用可變體積的陣列實現List介面,但加入的元素均為物件;

9.Map將鍵值對映到某個值,一個鍵值最多隻有一個對映值;

10.HashMap是無序的,執行緒不安全的,可以允許鍵值或值為null,但只允許一個鍵值為null,執行效率比HashTable要高一些;

11.HashTable是執行緒安全的,不允許鍵值或值是null;但現在不建議使用HashTable,因為他是一個遺留類,可以用其他方法實現執行緒同步;