一.其他map
1.1 针对map的三种遍历方式
//1. key-->set--->KeySetfor (char key: map.keySet()) {System.out.println(key+":"+map.get(key));}//2. valueCollection<Integer> values=map.values();for (Integer v:values) {System.out.println(v);}//3. Entryfor (Map.Entry<Character,Integer> pair : map.entrySet()) {System.out.println(pair.getKey()+":"+pair.getValue());}
1.2 LinkedHashMap
按照存放时候的顺序排序
1.3 getOrDefault()
map.put('a',1);map.put('b',2);map.put('c',3);//如果存在c则获得3,如果不存在d则获得默认值100map.getOrDefault('c',100); //3map.getOrDefault('d',100); //100
1.4 putIfAbsent()
map.put('a',1);map.put('b',2);map.put('c',3);map.putIfAbsent('c',100); //如果存在c,就不会更改c的值,如果没有c,则c为100map.putIfAbsent('d',100); //100
1.5 merge()
map.merge('b',20,Integer::sum); //如果b在,则和value值完成一个sum的运算
1.6 ConcurrentHashMap
解决并发问题时使用