import java.util.Collections;
import java.util.Comparator;
import java.util.HashMap;
import java.util.Iterator;
import java.util.LinkedHashMap;
import java.util.LinkedList;
import java.util.List;
import java.util.Map;
public class Test
{
public static void main(String[] args)
{
Map<String,String> maps = new HashMap<String,String>();
maps.put("3", "9王五");
maps.put("1", "8张三");
maps.put("2", "8李四");
maps.put("4", "6赵六");
maps = sortByValue(maps);
Iterator it = maps.entrySet().iterator();
while (it.hasNext()) {
Map.Entry pairs = (Map.Entry) it.next();
System.out.println(pairs.getValue());
}
}
public static Map sortByValue(Map<String, String> map) {
List list = new LinkedList(map.entrySet());
Collections.sort(list, new Comparator(){
public int compare(Object o1, Object o2) {
return ((Comparable) ((Map.Entry)o1).getValue())
.compareTo(((Map.Entry)o2).getValue());
}
});
Map result = new LinkedHashMap();
for (Iterator it = list.iterator(); it.hasNext();) {
Map.Entry entry = (Map .Entry) it.next();
result.put(entry.getKey(), entry.getValue());
}
return result;
}
public static Map sortByValue(Map map, final boolean reverse) {
List list = new LinkedList(map.entrySet());
Collections .sort(list, new Comparator() {
public int compare(Object o1, Object o2) {
if (reverse) {
return -((Comparable) ((Map .Entry)o1).getValue())
.compareTo(((Map .Entry)o2).getValue());
}
return ((Comparable) ((Map .Entry)o1).getValue())
.compareTo(((Map .Entry)o2).getValue());
}
});
Map result = new LinkedHashMap();
for (Iterator it = list.iterator(); it.hasNext();) {
Map.Entry entry = (Map.Entry) it.next();
result.put(entry.getKey(), entry.getValue());
}
return result;
}}
Map按Value排序
最新推荐文章于 2024-07-13 22:56:10 发布