67,513
社区成员
发帖
与我相关
我的任务
分享
public static void main(String[] args) throws Exception {
List<Map<String,String>> list=new ArrayList<>();
Map<String,String> item=new HashMap<>();
item.put("xh", "1");
list.add(item);
item=new HashMap<>();
item.put("xh", "2");
list.add(item);
item=new HashMap<>();
item.put("xh", "3");
list.add(item);
item=new HashMap<>();
item.put("xh", "4");
list.add(item);
item=new HashMap<>();
item.put("xh", "1.1");
list.add(item);
item=new HashMap<>();
item.put("xh", "1.6");
list.add(item);
item=new HashMap<>();
item.put("xh", "1.2");
list.add(item);
list.stream().sorted((m1, m2) -> new BigDecimal(m1.get("xh")).compareTo(new BigDecimal(m2.get("xh")))).forEach(System.out::println);
}
Collections.sort(list, new Comparator<Map<String,String>>() {
@Override
public int compare(Map<String, String> o1, Map<String, String> o2) {
double d1 = Double.valueOf(o1.get("xh").toString());
double d2 = Double.valueOf(o2.get("xh").toString());
return (int)((d1-d2)*100);
}
});
System.out.println("list " + list);