Java list stream filter里面如何写如果某值不为空,则判断,否则不判断
时间: 2024-10-19 12:09:05 浏览: 59
java8从list集合中取出某一属性的值的集合案例
5星 · 资源好评率100%
在Java的List Stream API中,如果你想要过滤出非空值并进行操作,你可以结合`filter()`方法和条件表达式一起使用。下面是一个例子:
```java
List<String> values = ... // 初始化你的列表
List<String> nonEmptyValues = values.stream()
.filter(value -> value != null) // 过滤掉null值
.collect(Collectors.toList()); // 如果你想得到一个新的列表,使用Collectors.toList()
// 或者,如果你想直接对流进行处理,可以去掉collect步骤:
values.stream()
.filter(Objects::nonNull) // 使用Objects类的nonNull方法作为函数参考,更简洁
.forEach(System.out::println); // 打印每个非空元素
```
在这个示例中,`filter(value -> value != null)`创建了一个流,其中只包含非空的`value`。`Objects::nonNull`是Java 8引入的一种简写的引用方法,它等价于`v -> v != null`。
阅读全文