使用stream将集合中的一个字段的值等于true的对象,放入零一个集合
时间: 2024-03-05 18:53:11 浏览: 69
好的,下面是Java 8中使用Stream流将集合中的一个字段等于true的对象放入另一个集合的示例代码:
假设我们有一个Person类,其中包括name和isAdult两个字段:
```java
public class Person {
private String name;
private boolean isAdult;
// 省略构造方法和getter/setter方法
}
```
现在我们有一个Person类型的List集合,我们想要将其中所有isAdult字段为true的人放入另一个List集合中,可以使用Stream流的filter方法进行筛选,然后使用map方法将这些Person对象转换成其name字段的值,最后使用collect方法将这些值收集到另一个List集合中,示例代码如下:
```java
List<Person> personList = Arrays.asList(
new Person("John", true),
new Person("Jane", false),
new Person("Tom", true)
);
List<String> adultNameList = personList.stream()
.filter(Person::isAdult)
.map(Person::getName)
.collect(Collectors.toList());
```
以上代码中,我们使用filter方法筛选出所有isAdult字段为true的Person对象,然后使用map方法将这些Person对象映射成其name字段的值,最后使用collect方法将这些值收集到另一个List集合中。
希望这个示例对你有所帮助,如有任何问题,请随时询问。
阅读全文