map:無序排序
treemap:默認是升序(以key做爲標準)get
linkedhashmap:默認是插入數據時的順序hash
若是須要自定義,可作如下操做:io
對於map的排序:hashmap
Map<String, String> map = new TreeMap<String, String>( new Comparator<String>() { public int compare(String obj1, String obj2) { // 降序排序(調整o1和o2比較的順序調節升序和降序) return obj2.compareTo(obj1); } });
以上是對key的排序處理.List
//這裏將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()); } });
以上是對value的排序處理,若是修改 o1.getKey().compareTo(o2.getKey());便可轉成key的排序處理.map
以上兩種方法都是實現重寫conpare方法實現自定義排序處理.方法