小编Cha*_*d K的帖子

当map在filter和findFirst之后引发异常时,需要继续过滤Java流

我有以下代码:

return myList
    .stream()
    .filter(Objects::nonNull)
    .filter(listItem -> {
        try {
            return listItem.matchesCondition();
        } catch (Exception e) {
            // log error
            return false;
        }
    })
    .findFirst()
    .map(listItem -> {
        try {
            return listItem.getResult();
        } catch (Exception e) {

            // IF THIS HAPPENS, HOW CAN WE ADVANCE TO THE NEXT ITEM IN THE STREAM.
            // I'M ASSUMING WE CAN NOT SINCE THE STREAM WAS TERMINATED BY findFirst.
            // BUT HOW CAN I WRITE THIS IN A DIFFERENT WAY TO ACHIEVE THAT BEHAVIOR? …
Run Code Online (Sandbox Code Playgroud)

java lambda java-8

5
推荐指数
1
解决办法
1874
查看次数

标签 统计

java ×1

java-8 ×1

lambda ×1