stream流过滤list
时间: 2023-10-05 20:10:19 浏览: 38
可以使用Java 8的Stream API和filter()方法来过滤List中的元素。
假设我们有一个包含整数的List:
```java
List<Integer> numbers = Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8, 9, 10);
```
我们想要过滤出所有的偶数,可以使用以下代码:
```java
List<Integer> evenNumbers = numbers.stream()
.filter(n -> n % 2 == 0)
.collect(Collectors.toList());
```
这里,我们首先将List转换为一个Stream对象,然后使用filter()方法过滤出所有满足条件的元素(这里是n % 2 == 0即为偶数),最后将过滤后的结果收集到一个新的List中。
如果我们想要过滤出所有大于5的元素,可以使用以下代码:
```java
List<Integer> greaterThanFive = numbers.stream()
.filter(n -> n > 5)
.collect(Collectors.toList());
```
这里,我们将条件改为n > 5即可。
相关问题
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中。
stream流filter过滤list
stream流的filter方法可以用于过滤list中的元素,它接受一个Predicate参数,该参数是一个函数式接口,用于判断元素是否符合过滤条件。filter方法会返回一个新的Stream对象,其中包含符合条件的元素。需要注意的是,filter方法并不会改变原始的list对象,而是返回一个新的Stream对象,因此如果需要修改过滤后的数据,需要新建对象。
举个例子,假设我们有一个List<Integer>对象,其中包含1到10的整数,我们可以使用filter方法过滤出其中的偶数:
```java
List<Integer> list = Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8, 9, 10);
List<Integer> evenList = list.stream().filter(i -> i % 2 == 0).collect(Collectors.toList());
```
上述代码中,我们使用stream方法将list转换为Stream对象,然后使用filter方法过滤出其中的偶数,最后使用collect方法将结果转换为List对象。在这个例子中,evenList将包含2, 4, 6, 8, 10这些偶数。
阅读全文