我创建了一个像这样的 HashMap 的 ArrayList
ArrayList<HashMap<?,?>> var = new ArrayList<HashMap<?,?>>();
我的 HashMap 包含一个带有键“name”的字符串值“name”。我想要按名称对 ArrayList 进行排序,所以我可以使用 Comparator 来做到这一点吗? 请帮助我。
最佳答案
ArrayList<HashMap<String,String>> var = new ArrayList<HashMap<String,String>>();
Collections.sort(var, new Comparator(){
public int compare(Object o1, Object o2)
{
Map map1 = (Map) o1;
Map map2 = (Map)o2;
String name1 = (String) map1.get("name");
String name2 = (String) map2.get("name");
if(name1 != null){
return name1.compareTo(name2);
} else if(name2 != null){
return name2.compareTo(name1);
}else{
return 0;
}
}
});
答案在这里。
关于java - 使用 Comparator 接口(interface)排序的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6211167/