import java.util.*;
import java.util.stream.Collectors;
public class ListMapSortExample {
public static void main(String[] args) {
// 创建一个包含Map的List
List<Map<String, Object>> list = new ArrayList<>();
// 添加一些示例数据到List中
Map<String, Object> map1 = new HashMap<>();
map1.put("name", "Alice");
map1.put("age", 30);
list.add(map1);
Map<String, Object> map2 = new HashMap<>();
map2.put("name", "Bob");
map2.put("age", 25);
list.add(map2);
Map<String, Object> map3 = new HashMap<>();
map3.put("name", "Charlie");
map3.put("age", 35);
list.add(map3);
// 按照年龄升序排序
List<Map<String, Object>> sortedList = list.stream()
.sorted(Comparator.comparingInt(o -> (Integer) o.get("age")))
.collect(Collectors.toList());
// 输出排序后的结果
sortedList.forEach(map -> System.out.println(map.get("name") + ": " + map.get("age")));
}
}
创建 List<Map<String, Object>>:我们首先创建了一个包含 Map<String, Object> 的列表,每个 Map 代表一个对象,其中键是属性名(如 "name" 和 "age"),值是属性对应的值。
添加示例数据:我们向列表中添加了三个 Map,每个 Map 包含两个键值对,分别表示人的名字和年龄。
排序:使用 Java 8 的流(Stream)API 对列表进行排序。这里我们使用 Comparator.comparingInt 来根据 age 进行升序排序。o.get("age") 获取每个 Map 中的 age 值,并将其转换为 Integer 类型。
输出结果:最后,我们遍历排序后的列表,并打印出每个人的名字和年龄。
如果你需要按照其他字段排序,只需将 o.get("age") 替换为你要排序的字段即可。
上一篇:java aes解密工具类
下一篇:java list对象排序
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站