HashMap,TreeMap,LinkedHashMap三种map的排序特点
2017-03-31 00:00
507 查看
测试如下,
通过输出比较相互的差异
package com.hjcui.study; import java.util.HashMap; import java.util.LinkedHashMap; import java.util.Map; import java.util.SortedMap; import java.util.TreeMap; /* * 三种map的排序特点 */ public class MapTest { @SuppressWarnings(value = { "unchecked", "rawtypes" }) public static void main(String[] args) { Map m1 = new HashMap(); m1.put("bbb", "HashMap"); m1.put("aaa", "111"); m1.put("ccc", "hjcui"); m1.put("aaa", "111s"); System.out.println(m1.keySet()); System.out.println(m1.values()); SortedMap sm = new TreeMap(); sm.put("bbb", "TreeMap"); sm.put("aaa", "111"); sm.put("ccc", "hjcui"); sm.put("aaa", "111s"); System.out.println(sm.keySet()); System.out.println(sm.values()); LinkedHashMap lm = new LinkedHashMap(); lm.put("bbb", "LinkedHashMap"); lm.put("aaa", "111"); lm.put("ccc", "hjcui"); lm.put("aaa", "111s"); System.out.println(lm.keySet()); System.out.println(lm.values()); // 举个栗子 按字符出现的顺序输出字符和次数 String str = "hjcuihjcui321aa"; Map<Character, Integer> result = getCharMaps(str); System.out.println(result); } public static Map<Character, Integer> getCharMaps(String s) { Map<Character, Integer> map = new LinkedHashMap<Character, Integer>(); for (int i = 0; i < s.length(); i++) { Character c = s.charAt(i); Integer count = map.get(c); map.put(c, count == null ? 1 : count + 1); } return map; } }
通过输出比较相互的差异
[aaa, ccc, bbb] [111s, hjcui, HashMap] [aaa, bbb, ccc] [111s, TreeMap, hjcui] [bbb, aaa, ccc] [LinkedHashMap, 111s, hjcui] {h=2, j=2, c=2, u=2, i=2, 3=1, 2=1, 1=1, a=2}
相关文章推荐
- HashMap,LinkedHashMap,TreeMap,HashTable,ConcurrentHashMap,ConcurrentSkipListMap 关于k,v是否为null,以及输出排序
- Java中对Map(HashMap,TreeMap,Hashtable,LinkedHashMap等)的排序
- Java中对Map(HashMap,TreeMap,Hashtable等)的排序
- java集合map之HashMap、HashTable、TreeMap、LinkedHashMap(一)
- 牛客网Java刷题知识点之Map的两种取值方式keySet和entrySet、HashMap 、Hashtable、TreeMap、LinkedHashMap、ConcurrentHashMap 、WeakHashMap
- HashMap,LinkedHashMap 和 TreeMap 的排序
- Map: HashMap, LinkedHashMap, TreeMap, Hashtable
- [Java]Map&HashMap&TreeMap&LinkedHashMap
- 论HashMap、Hashtable、TreeMap、LinkedHashMap的内部排序
- java中的几种泛型类——HashSet、HashMap、TreeSet、TreeMap,遍历map,排序,HashTable比较
- Map集合分类介绍(hashTable、treeMap、hashMap、linkedHashMap)
- Map ,HashMap , TreeMap , TreeMap 默认排序
- Java中对Map(HashMap,TreeMap,Hashtable等)的排序
- hashMap,treeMap,LinkedHashMap的默认排序
- HashMap,LinkedHashMap 和 TreeMap 的排序研究
- Java集合之五Map、HashMap、LinkedHashMap、TreeMap、Properties
- Java基础 - 双列集合Map,HashMap,LinkedHashMap,LinkedMap,TreeMap,Collections工具类
- Map映射—Java实现—LinkedHashMap、HashMap、TreeMap
- Map接口之Hashtable、HashMap、LinkedHashMap、TreeMap、WeakHashMap等
- java为数据结构中的映射定义了一个接口java.util.Map;它有四个实现类HashMap Hashtable LinkedHashMap 和TreeMap.