List集合的过滤之lambda表达式
时间: 2023-07-06 09:04:30 浏览: 62
Lambda表达式可以用于List集合的过滤,实现过滤的方法为 `filter()`,其基本语法如下:
```java
List<T> filteredList = list.stream()
.filter(element -> /* 过滤条件 */)
.collect(Collectors.toList());
```
其中,`element` 为集合中的每个元素,`->` 表示Lambda表达式的符号,`/* 过滤条件 */` 表示过滤条件,返回值为布尔类型。
例如,如果我们有一个字符串类型的List集合,想要过滤出长度大于等于5的字符串,可以使用如下代码:
```java
List<String> list = Arrays.asList("apple", "orange", "banana", "grape", "watermelon");
List<String> filteredList = list.stream()
.filter(s -> s.length() >= 5)
.collect(Collectors.toList());
System.out.println(filteredList); // 输出 [orange, banana, grape, watermelon]
```
在Lambda表达式中,`s` 代表集合中的每个元素,`s.length() >= 5` 表示过滤条件为字符串长度大于等于5。最后将过滤后的结果转换为List集合并输出。