1. 程式人生 > >HashMap和TreeMap

HashMap和TreeMap

簡單描述一下HashMap和TreeMap的區別

更多精彩

介紹

  1. Map是key-value的集合介面,其實現類包括:
    1. HashMap - 值沒有順序
    2. TreeMap - key值預設升序
    3. LinkedHashMap - 值沒有順序

key排序

Map<String, String> map = new TreeMap<String, String>(
	new Comparator
<String>() { public int compare(String obj1, String obj2) { // 降序排序 return obj2.compareTo(obj1); } } );

value排序

// 這裡將map.entrySet()轉換成list
List<Map.Entry<String,String>> list = new ArrayList<Map.Entry<String,String>>(map.entrySet());
	// 然後通過比較器來實現排序
	Collections.
sort(list,new Comparator<Map.Entry<String,String>>() { // 升序排序 public int compare(Entry<String, String> o1, Entry<String, String> o2) { return o1.getValue().compareTo(o2.getValue()); } } );