1. 程式人生 > >java集合之Map

java集合之Map

map 增強for循環 keyset map.entry ear 覆蓋 integer pre 形式

1. Map集合之基礎增刪查等功能

 1 public class Demo1_Map {
 2 
 3     /*
 4      * Map集合是以鍵值對的形式存在,底層依賴的是set集合
 5      * 
 6      * a. 添加功能
 7      *         V put(K key, V value)
 8      *             如果鍵是第一次存入,則就直接存儲元素,返回null  (其實本質是和鍵存在是一樣的,只是覆蓋的null)
 9      *             如果鍵不是第一次存入,就用值把以前的替換掉,返回以前的值
10      * b.  刪除功能
11 * void clear() 移除所有的鍵值信息 12 * V remove(Object key) 刪除指定鍵對應的元素值,並把值返回,當所傳的鍵值不存在時就返回null 13 * c. 判斷功能 14 * boolean containsKey(Object key) 判斷集合中是否包含此鍵 15 * boolean containsValue(Object value) 判斷集合是否包含指定的值 16 * boolean isEmpty() 判斷集是否為空
17 * d. 獲取功能 18 * Set<Map.Entry<K,V>> entrySet() 19 * V get(Object key) 根據鍵獲取值 20 * Set<K> keySet() 獲取集合中所有鍵的集合 21 * Collection<V> values() 獲取集合中所有值的集合,返回一個Conllection 22 * e. 長度功能 23 * int size() 返回集合中所有鍵值對的個數
24 * 25 */ 26 public static void main(String[] args) { 27 28 //demo1(); 29 //demo2(); 30 //demo3(); 31 Map<String, Integer> map = new HashMap<>(); 32 Integer i1 = map.put("張三", 23); 33 Integer i2 = map.put("李四", 24); 34 Integer i3 = map.put("王五", 25); 35 Integer i4 = map.put("趙六", 26); 36 Integer i5 = map.put("張三", 26); 37 Set<Entry<String, Integer>> set = map.entrySet(); 38 System.out.println(set); //[李四=24, 張三=26, 王五=25, 趙六=26] 39 System.out.println(map.values()); //[24, 26, 25, 26] 40 41 } 42 43 /** 44 * 判斷功能 45 */ 46 public static void demo3() { 47 Map<String, Integer> map = new HashMap<>(); 48 map.put("lisi", 24); 49 boolean b1 = map.containsKey("lisi"); 50 System.out.println(b1); //true 51 boolean b2 = map.containsValue(24) ; 52 System.out.println(b2); //true 53 } 54 55 /** 56 * 刪除功能 57 */ 58 public static void demo2() { 59 Map<String, Integer> map = new HashMap<>(); 60 map.put("李四", 24); 61 Integer i = map.remove("張三"); 62 System.out.println(i); //null 63 Integer i1 = map.remove("李四"); 64 System.out.println(i1); //24 65 } 66 67 /** 68 * 添加功能 69 */ 70 public static void demo1() { 71 Map<String, Integer> map = new HashMap<>(); 72 Integer i1 = map.put("張三", 23); 73 Integer i2 = map.put("李四", 24); 74 Integer i3 = map.put("王五", 25); 75 Integer i4 = map.put("趙六", 26); 76 Integer i5 = map.put("張三", 26); 77 System.out.println(map); 78 System.out.println(i1); 79 System.out.println(i2); 80 System.out.println(i3); 81 System.out.println(i4); 82 System.out.println(i5); 83 } 84 85 }

2. 遍歷Map集合

 1 public class Demo2_Map {
 2 
 3     /**
 4      * @param args
 5      * 遍歷map集合
 6      * 
 7      */
 8     public static void main(String[] args) {
 9 
10         Map<String, Integer> map = new HashMap<>();
11         map.put("張三", 23);
12         map.put("李四", 24);
13         map.put("王五", 25);
14         map.put("趙六", 26);
15         
16         /*
17           使用叠代器進行遍歷Map集合
18         Set<String> set = map.keySet();
19         Iterator<String> it = set.iterator();
20         while (it.hasNext()) {
21             String key = it.next();
22             System.out.println(key + "=" + map.get(key));
23         }*/
24         
25         
26         //使用增強for循環進行遍歷Map集合
27         for (String string : map.keySet()) {
28             System.out.println(string + "=" + map.get(string));
29         }
30     }
31 
32 }

java集合之Map