1. 程式人生 > 其它 >JAVA 集合 List Map Set

JAVA 集合 List Map Set

java集合

List Set Map 三個介面的區別?

集合定義:集合是指一組相關的元素組成的一個單一的物件。

Java的集合是一種特別有用的工具類,它用於儲存數量不等的多個物件,並且可以實現常用的資料結構例如:棧、堆、佇列…..Java集合還可以儲存具有對映關係的關聯資料。

Java的集合分為三大類:List、Set、Map其中List代表:有序,可重複的集合。Set代表:無序,不可重複的集合。Map代表具有對映關係的集合。

首先:用一張結構圖,來區分三者的區別:

可以清晰的看到結構圖三者的區別:

List, Set,繼承自Collection介面,而Map並沒有繼承

首先,List與Set具有相似性,它們都是單列元素的集合,

List代表的是有序(元素的新增順序),可重複的集合。他的常用實現類有:ArrayList、LinkedList。

Set介面代表的是無序(新增順序),不可重複的集合。常用實現類HashSet

Map是以鍵值對出現的。它是雙列的集合,其中有put方法,定義如下:put(obj key,obj value)

Map集合代表將鍵對映到值的物件。一個對映不能包含重複的鍵;每個鍵最多隻能對映到一個值。Map介面中常用實現類為HashMap、HashTable

存取元素時,各有什麼特點?

List除了可以以Iterator介面取得所有的元素,再逐一遍歷各個元素之外,還可以呼叫get(index i)來明確說明取第幾個。

Set取元素時,沒法說取第幾個,只能以Iterator介面取得所有的元素,再逐一遍歷各個元素。

Map它是雙列的集合,其中有put方法,定義如下:put(obj key,obj value),每次儲存時,要儲存一對key/value,不能儲存重複的key,這個重複的規則也是按equals比較相等。取則可以根據key獲得相應的value,即get(Object key)返回值為key所對應的value。