如何用stream把List<Teacher> 转 List<Map<String, Object>> List<Teacher> list5 = new ArrayList<>(); list5.add(new Teacher(1, "马强", 4, 40)); list5.add(new Teacher(2, "花无缺", 3, 50)); list5.add(new Teacher(3, "西门吹雪", 5, 45));
时间: 2023-06-08 17:04:41 浏览: 94
C#中数组Array,ArrayList,泛型List详细对比
可以使用Java 8中的Stream API将List<Teacher>转换为List<Map<String, Object>>。代码如下:
List<Map<String, Object>> resultList = list5.stream()
.map(teacher -> {
Map<String, Object> map = new HashMap<>();
map.put("id", teacher.getId());
map.put("name", teacher.getName());
map.put("level", teacher.getLevel());
map.put("age", teacher.getAge());
return map;
})
.collect(Collectors.toList());
其中,map(teacher -> {...})是一个Lambda表达式,使用map方法将每个Teacher对象转换为一个Map<String, Object>对象,然后使用collect方法将所有Map对象收集到一个List中。
阅读全文