1.TreeMap倒序排列(默认是升序排列的)
TreeMap<String,String> treeMap = new TreeMap<String,String>(
//运用比较器倒叙存储
new Comparator<String>() {
@Override
public int compare(String o1, String o2) {
//倒叙
return o2.compareTo(o1);
}
}
);
treeMap.put("1","111");
treeMap.put("8","888");
treeMap.put("7","777");
treeMap.put("2","222");
treeMap.put("5","555");
Set<String> keys = treeMap.keySet();
Iterator<String> iterator = keys.iterator();
while(iterator.hasNext()){
String key = iterator.next();
System.out.print(key+"============"+treeMap.get(key));
}
2.LinkedHashMap按存放顺序排序
LinkedHashMap<String, String> linkedHashMap = new LinkedHashMap<>();
linkedHashMap.put("4","44");
linkedHashMap.put("2","22");
linkedHashMap.put("5","55");
linkedHashMap.put("3","33");
linkedHashMap.put("1","11");
Set<String> kyes = linkedHashMap.keySet();
Iterator<String> iterator = kyes.iterator();
while (iterator.hasNext()){
String key = iterator.next();
System.out.println(linkedHashMap.get(key));
}
3.HashMap 用collections实现正序排序
HashMap<String,String> map = new HashMap<String, String>();
map.put("e","9");
map.put("a","99");
map.put("b","999");
map.put("d","9999");
map.put("c","1");
ArrayList<Map.Entry<String, String>> entries = new ArrayList<Map.Entry<String, String>>(map.entrySet());
Collections.sort(entries, new Comparator<Map.Entry<String, String>>() {
@Override
public int compare(Map.Entry<String, String> o1, Map.Entry<String, String> o2) {
return o1.getKey().compareTo(o2.getKey());
}
});
Set<String> kyes = map.keySet();
Iterator<String> iterator = kyes.iterator();
while (iterator.hasNext()){
String key = iterator.next();
System.out.println(map.get(key));
}
**
如果有哪里不对请指正谢谢
**