標籤:
在java在,資料收集的操作,應使用非常。最近看了零星收集的小知識,在這裡,一點點排序。
它基本上是四個常用的類操作點總結集合。
首先。集合大致分為兩個方向。一種是普通的集合類型,通過介面collection向下擴充,還有一種是map介面下的鍵值對的集合類型。今天主要說的的四個類ArrayList和LinkedList是collection介面下List介面的兩個實作類別。另外兩個HashMap和TreeMap則是Map介面的實作類別。
首先,對於Collection,它的主要分支有兩個:List和Set。List是有序的能夠反覆的集合介面,而Set是無序的不可反覆的集合介面。
ArrayList:
- 線程非同步
- 介紹:可變的數組,同意全部元素包含NULL
- 特點:能夠依據索引位置對集合進行高速的訪問和遍曆,缺點是向指定位置插入和刪除對象非常慢
- 應用:適合隨機尋找和遍曆,不適合插入和刪除。
LinkList:
- 線程非同步
- 介紹:採用鏈表結構儲存對象
- 特點:非常便於向指定地點插入和刪除對象,缺點是隨機訪問集合中的對象效率非常慢
- 應用:資料的動態插入和刪除,不適合隨機訪問和遍曆
由於兩個類都是實現List介面,方法都差點兒相同:
@Testpublic void test1(){List<String> list=new ArrayList<String>();list.add("AK-47");list.add("ACER");list.add("ASUS");list.set(2, "HP");//替換list.add(2, "Dell");//插入list.add("LENOVO");list.indexOf("HP");//尋找Iterator<String> iterator =list.iterator();while(iterator.hasNext()){System.out.println(iterator.next());}}
HashMap:
- 介紹:基於雜湊表的Map介面實現,同意NULL
- 特點:實現了Map集合對加入刪除映射關係效率比較高,不能保證映射順序
- 應用:用於加入刪除映射關係
TreeMap:
- 介紹:實現Map和SortedMap介面,不同意NULL
- 特點:有一定的映射順序,可是加入刪除映射關係效率比HashMap差
- 應用:用於加入刪除映射關係
示範代碼:
@Testpublic void test2(){HashMap m=new HashMap();m.put("001", "Acer");m.put("002", "HP");m.remove("002");m.put("003", "LENOVO");Set set=m.entrySet(); Iterator iterator=set.iterator();while(iterator.hasNext()){Map.Entry mapentity= (Map.Entry) iterator.next();System.out.println(mapentity.getKey()+":"+mapentity.getValue());}}OK。設定在第一個寫在這裡。有什麼不對,請大家指正
著作權聲明:本文部落格原創文章,部落格,未經同意,不得轉載。
java基金會成立