jdk/src/share/classes/java/util/Objects.java
changeset 17431 335d87f0d817
parent 16864 e3d9b9cf6d3c
child 17465 6ea0e148a562
--- a/jdk/src/share/classes/java/util/Objects.java	Mon May 06 14:17:59 2013 -0700
+++ b/jdk/src/share/classes/java/util/Objects.java	Mon May 06 20:54:42 2013 -0700
@@ -226,4 +226,40 @@
             throw new NullPointerException(message);
         return obj;
     }
+
+    /**
+     * Returns {@code true} if the provided reference is {@code null} otherwise
+     * returns {@code false}.
+     *
+     * @apiNote This method exists to be used as a
+     * {@link java.util.function.Predicate}, {@code filter(Objects::isNull)}
+     *
+     * @param obj a reference to be checked against {@code null}
+     * @return {@code true} if the provided reference is {@code null} otherwise
+     * {@code false}
+     *
+     * @see java.util.function.Predicate
+     * @since 1.8
+     */
+    public static boolean isNull(Object obj) {
+        return obj == null;
+    }
+
+    /**
+     * Returns {@code true} if the provided reference is non-{@code null}
+     * otherwise returns {@code false}.
+     *
+     * @apiNote This method exists to be used as a
+     * {@link java.util.function.Predicate}, {@code filter(Objects::nonNull)}
+     *
+     * @param obj a reference to be checked against {@code null}
+     * @return {@code true} if the provided reference is non-{@code null}
+     * otherwise {@code false}
+     *
+     * @see java.util.function.Predicate
+     * @since 1.8
+     */
+    public static boolean nonNull(Object obj) {
+        return obj != null;
+    }
 }