Java过滤

示例

filter()用于表示只有在与谓词匹配时才需要该值。

觉得像。if (!somePredicate(x)) { x = null; }

代码示例:

String value = null;
Optional.ofNullable(value) // 没有
        .filter(x -> x.equals("cool string"))// 由于值为null,因此永远不会运行
        .isPresent(); // 假
String value = "cool string";
Optional.ofNullable(value) // 某事
        .filter(x -> x.equals("cool string"))// 这是运行并通过
        .isPresent(); // 真正
String value = "hot string";
Optional.ofNullable(value) // 某事
        .filter(x -> x.equals("cool string"))// 这运行并失败
        .isPresent(); // 假