HashMap和TreeMap
阿新 • • 發佈:2018-11-10
簡單描述一下HashMap和TreeMap的區別
更多精彩
- 更多技術部落格,請移步 asing1elife’s blog
介紹
- Map是key-value的集合介面,其實現類包括:
- HashMap - 值沒有順序
- TreeMap - key值預設升序
- 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());
}
}
);