list.stream().filter().map怎么用
时间: 2023-10-13 10:25:40 浏览: 74
Java8中利用stream对map集合进行过滤的方法
`List.stream()` 是将 `List` 转换为 `Stream`,使得能够在集合上应用流式操作。
`filter()` 方法接受一个 `Predicate` 参数,该参数表示一个判断条件,返回一个 `Stream`,其中包含原来 `Stream` 中满足该条件的元素。
`map()` 方法接受一个 `Function` 参数,该参数表示对每个元素进行的转换操作,返回一个 `Stream`,其中包含由该函数映射的新元素。
下面是一个示例代码,假设有一个 `List` 包含若干个整数,要过滤掉其中的偶数,并将剩下的奇数加倍:
```java
List<Integer> numbers = Arrays.asList(1, 2, 3, 4, 5, 6);
List<Integer> result = numbers.stream()
.filter(n -> n % 2 != 0)
.map(n -> n * 2)
.collect(Collectors.toList());
System.out.println(result); // 输出 [2, 6, 10]
```
上述代码中,首先将 `List` 转换为 `Stream`,然后使用 `filter` 方法过滤掉偶数,再使用 `map` 方法将剩下的奇数加倍,最后使用 `collect` 方法将结果收集到一个新的 `List` 中。
阅读全文