listlist = new arraylist();
獲取值:list.get(0);
新增值:list.add("zhu");
獲取長度:list.size();
mapmap = new hashmap();
獲取值:map.get("name")
新增值:map.put("小明","14歲") //假設兩個都是string
獲取長度:map.size()
list> listmap = new arraylist>();
1:宣告乙個map
mapmap = new hashmap();
說明:map是通過key-value(值鍵對) ,string代表key的型別(一般都是string),object代表value的型別
2:put(key,value) 賦值
map.put("name", "小明");
map.put("***", "男");
map.put("age", 18);
3:get(key) 取值
map.get("name") 結果:小明
(三):list
1:宣告乙個list
list> listmap = new arraylist>();
2:賦值
(1):先賦值給map
mapmap1 = new hashmap();
map1.put("name", "小明");
map1.put("***", "男");
map1.put("age", 18);
mapmap2 = new hashmap();
map2.put("name", "小紅");
map2.put("***", "女");
map2.put("age", 16);
(2):將map新增到list中
listmap.add(map1);
listmap.add(map2);
結果:[, ]
(3):遍歷
for(int i = 0;isystem.out.print(listmap.get(i).get("name"));
system.out.print(listmap.get(i).get("***"));
system.out.print(listmap.get(i).get("age"));
system.out.println();
}原文:
set courseset = new hashset();
setcourseset1 = new hashset();
seth = new hashset(arrays.aslist("a", "b"));
新增值:set和list不一樣,它是乙個介面,因此需要例項化它的實現類。
string s1=new string("hello");
set.add(s1);
獲取值:
獲取長度:set.size
1、首先set和list都屬於collection,map則不是。
collection中每個位置只有乙個元素。list並且是線性存放,可重複的。
map則是鍵值配對,乙個key只能有乙個value。
2、什麼時候使用它們
1. 如果涉及到堆疊,佇列等操作,應該考慮用list,對於需要快速插入,刪除元素,應該使用linkedlist,如果需要快速隨機訪問元素,應該使用arraylist。
2. 如果程式在單執行緒環境中,或者訪問僅僅在乙個執行緒中進行,考慮非同步的類,其效率較高,如果多個執行緒可能同時操作乙個類,應該使用同步的類。
3. 在除需要排序時使用treeset,treemap外,都應使用hashset,hashmap,因為他們 的效率更高。
4. 要特別注意對雜湊表的操作,作為key的物件要正確複寫equals和hashcode方法。
Map Set和List的一些關聯
三種集合的示意圖如下 一 map和set map集合的key具有的特徵是無序不重複,如果將map的所有key集中起來,那麼這些key就組成了乙個set集合,而且事實就是map集合提供了如下方法來返回所有key組成的集合 可以看出keyset 的返回型別就是set型別的。對於map而言只要把所有的ke...
List,陣列,map,set 相互轉化
list 陣列 listlist new arraylist list.add tom list.add jerval list.add weisi object objects list.toarray 返回object陣列 system.out.println objects arrays.to...
List 和 IList的區別
常見問題 ilist 本身只是乙個泛型介面,既然是介面當然不能例項化,只能用如下方法 ilist ilist11 new list 但是為什麼要這麼用呢,為什麼不直接用list list list11 new list 第一種用法有什麼好處。總結歸納一下 ilist 是在 net2.0裡面才支援的 ...