java用Stream流拿出对应的元素案例
时间: 2024-03-02 13:50:03 浏览: 20
假设我们有一个List存储了一些Person对象,每个Person对象中都有一个name属性。现在我们需要从List中筛选出name属性为“Tom”的Person对象。可以使用Java 8中的Stream API来实现:
```
List<Person> personList = new ArrayList<>();
personList.add(new Person("Tom", 20));
personList.add(new Person("Jerry", 18));
personList.add(new Person("Tom", 25));
List<Person> tomList = personList.stream()
.filter(person -> "Tom".equals(person.getName()))
.collect(Collectors.toList());
tomList.forEach(System.out::println);
```
这段代码会输出List中name属性为“Tom”的Person对象。其中,filter方法用于筛选满足条件的元素,collect方法用于将筛选出的元素收集到一个新的List中。最后,我们使用forEach方法循环输出新的List中的元素。
在这个例子中,我们使用了lambda表达式来定义filter方法中的筛选条件。如果你不熟悉lambda表达式的用法,可以先学习一下它的基本语法和用法。
相关问题
java 使用stream流过滤List的元素
可以使用filter方法对List中的元素进行过滤,例如:
List<Integer> list = Arrays.asList(1, 2, 3, 4, 5);
List<Integer> filteredList = list.stream()
.filter(num -> num % 2 == )
.collect(Collectors.toList());
这段代码会将List中的偶数元素过滤出来,存放在filteredList中。
java 使用stream流过滤数组的元素
可以使用 filter() 方法来过滤数组的元素,例如:
int[] arr = {1, 2, 3, 4, 5};
int[] filteredArr = Arrays.stream(arr)
.filter(num -> num % 2 == )
.toArray();
// 过滤出偶数,filteredArr = {2, 4}
注意:以上回答并不代表 CSDN 或 ChatGPT 的观点或立场。