List<HashMap<String,String>> 排序
时间: 2023-07-09 14:30:54 浏览: 103
可以使用Java中的Collections类的sort()方法来对List中的HashMap进行排序。以下是一个示例代码:
```java
List<HashMap<String, String>> list = new ArrayList<>();
HashMap<String, String> map1 = new HashMap<>();
map1.put("name", "Alice");
map1.put("age", "23");
HashMap<String, String> map2 = new HashMap<>();
map2.put("name", "Bob");
map2.put("age", "20");
HashMap<String, String> map3 = new HashMap<>();
map3.put("name", "Charlie");
map3.put("age", "25");
list.add(map1);
list.add(map2);
list.add(map3);
// 按照age升序排序
Collections.sort(list, new Comparator<HashMap<String, String>>() {
@Override
public int compare(HashMap<String, String> o1, HashMap<String, String> o2) {
return Integer.parseInt(o1.get("age")) - Integer.parseInt(o2.get("age"));
}
});
// 输出排序后的结果
for (HashMap<String, String> map : list) {
System.out.println(map.get("name") + " " + map.get("age"));
}
```
在上面的示例中,我们创建了一个包含三个HashMap的List,并按照其中的"age"键升序排序。我们使用Collections.sort()方法对List进行排序,传入一个实现了Comparator接口的比较器对象,用于指定排序规则。在本例中,我们实现了一个匿名内部类,用于比较HashMap中"age"键对应的值并返回比较结果。最后,我们遍历排序后的List,并输出每个HashMap中"name"和"age"键对应的值。
阅读全文