HashMap<String, String> map = new HashMap<String, String>(); map.put("1", "2"); System.out.println(map.get("1"));
常用函数:
containsKey(key)
put(key, value)
remove(key)
clear()
containsValue(value)
keySet() // returns the set of keys
values() // 和keySet是不对称的
entrySet() // create set view of the map
size() // size of the HashMap
更新value:
HashMap<Character, Integer> map = new HashMap<Character, Integer>(); map.put('a',1); map.put('a',2); // 直接put就可以了, put函数会自己先调用containsKey函数的 map.put('a', map.get('a')+1); //在原来值上修改
遍历HashMap:
如果仅需要键(keys)或值(values)使用方法二。如果你使用的语言版本低于java 5,或是打算在遍历时删除entries,必须使用方法三。否则使用方法一(键值都要)。
// 方法一,key 和 value 都要遍历: Map<Integer, Integer> map = new HashMap<Integer, Integer>(); for (Map.Entry<Integer, Integer> entry : map.entrySet()) { System.out.println("Key = " + entry.getKey() + ", Value = " + entry.getValue()); } // 方法二, 单独遍历key或value: Map<Integer, Integer> map = new HashMap<Integer, Integer>(); //遍历map中的键 for (Integer key : map.keySet()) { System.out.println("Key = " + key); } //遍历map中的值 for (Integer value : map.values()) { System.out.println("Value = " + value); } // 方法三, iterator Map<Integer, Integer> map = new HashMap<Integer, Integer>(); Iterator<Map.Entry<Integer, Integer>> entries = map.entrySet().iterator(); while (entries.hasNext()) { Map.Entry<Integer, Integer> entry = entries.next(); System.out.println("Key = " + entry.getKey() + ", Value = " + entry.getValue()); }
// create hash map HashMap newmap = new HashMap(); // populate hash map newmap.put(1, "tutorials"); newmap.put(2, "point"); newmap.put(3, "is best"); // create set view for the map Set set=newmap.entrySet(); // check set values System.out.println("Set values: " + set);