stream流 将一个list<对象>转成另一个list<对象>
时间: 2023-12-05 18:04:06 浏览: 175
java8 stream 由一个list转化成另一个list案例
可以使用 Java 8 中的 Stream API 来实现将一个 List\<对象\> 转成另一个 List\<对象\> 的操作。
假设我们有一个 Student 类,其中包含姓名 name 和年龄 age 两个属性。现在我们有一个 List<Student>,我们想要将其中年龄大于等于 18 岁的学生筛选出来,并将他们的姓名添加到一个新的 List<String> 中。
可以使用以下代码完成上述操作:
```java
List<Student> students = new ArrayList<>();
// 添加学生到 students 列表中
List<String> names = students.stream()
.filter(s -> s.getAge() >= 18) // 筛选年龄大于等于 18 岁的学生
.map(Student::getName) // 获取学生的姓名
.collect(Collectors.toList()); // 将学生姓名添加到一个新的列表中
```
在上述代码中,我们使用 `stream()` 方法将 List<Student> 转换为一个 Stream<Student>,然后使用 `filter()` 方法筛选出年龄大于等于 18 岁的学生,接着使用 `map()` 方法获取学生的姓名,最后使用 `collect()` 方法将学生姓名添加到一个新的 List<String> 中。
阅读全文