list集合获取匹配条件的最后一个元素
时间: 2024-03-29 16:40:11 浏览: 81
JAVA JDK8 List分组获取第一个元素的方法
要获取 `List` 集合中匹配条件的最后一个元素,可以先将其转换成 `Stream`,然后调用 `filter` 方法过滤出符合条件的元素,接着使用 `reduce` 方法获取最后一个元素。例如:
```
List<String> list = Arrays.asList("apple", "banana", "cherry", "date");
String result = list.stream()
.filter(e -> e.startsWith("c"))
.reduce((first, second) -> second)
.orElse(null);
System.out.println(result); // 输出 "cherry"
```
在上述代码中,我们使用 `stream()` 方法获取 `List` 集合对应的 `Stream`,接着使用 `filter` 方法过滤出以 "c" 开头的元素,然后使用 `reduce` 方法获取最后一个符合条件的元素。在 `reduce` 方法中,我们使用 Lambda 表达式 `(first, second) -> second`,表示将第二个元素作为最终结果返回。最后使用 `orElse(null)` 方法指定如果没有符合条件的元素就返回 `null`。最终输出获取到的元素,即 "cherry"。
阅读全文