### Question:
PredicateUtil { public static <T> Predicate<T> not(Predicate<T> predicate) { if (predicate == null) { return null; } return predicate.negate(); } private  PredicateUtil(); static Predicate<T> not(Predicate<T> predicate);  }### Answer:
@Test void notConvertsNullToNull() { assertNull(PredicateUtil.not(null)); }
@Test void convertsPredicate() { final Predicate<Boolean> predicate = value -> !value; final Predicate<Boolean> negatedPredicate = PredicateUtil.not(predicate); assertTrue(negatedPredicate.test(true)); assertFalse(negatedPredicate.test(false)); }