天天看點

關于容器的了解

Container/collection

容器:一種用來存儲各種資料類型的資料結構

三種類型:

  1. Set(集合):無順序,不可重複(neither)

    (1)HashSet

    (2)TreeSet

    (3)SortedSet

  2. List(清單):固定順序,可重複(indices)

    (1)ArrayList

    (2)LinkedList

    (3)Vector

    (4)Stack

  3. Map(映射:無序,key-value鍵值對的集合(name)

    (1)HashMap

    (2)TreeMap

    (3)SortedMap

    (4)Hashtable

補充:hashmap很快,但是不保證映射的順序(不保證順序恒久不變)—》就是說你輸入的順序和你周遊列印輸出的順序可能是不一樣的。

建立操作

集合

Set set = new HashSet();

set.add(“Rain”);

清單

List list= new ArrayList();

list.add(“Rain”);

映射

Map<String,String> map = new HashMap<String,String>();

map.put(“first”,“Rain”);

周遊列印操作

疊代器iterators

步驟:

1.調用set/list/.iterator()方法建立iterator 對象

Iterator iterator = set.iterator();

Iterator iterator = list.iterator();

lterator<Map.Entry<String,String>> iterator = map.entrySet();

2.while循環調用,iterator.hasNext()檢驗

3.取值,列印

//set && list

while(iterator.hasNext())

{

String text = iterator.next();

System.out.println(text);

}

//map

while(iterator.hasNext())

{

Map.Entry<String,String> pair=iterator.next();

String key = pair.getKey();

String value = pair.getValue();

System.out.println(key +" :"+value);

}

簡化方法

(也隐形的調用了iterator)

//set && list

for (String text :set/list)

{

System.out.println(text);

}

//map

for(Map.Entry<String,String> pair : map.entrySet())

{

String key= pair.getKey();

String value = pair.getValue();

System.out.println(key+":"+value);

}

繼續閱讀