Package ch.rfin.util

Class Predicates

java.lang.Object
ch.rfin.util.Predicates

public class Predicates
extends java.lang.Object
Various predicates. These often make working with Streams cleaner. For example: stream.filter(lessThan(3)) instead of stream.filter(n -> n < 3). They can also make working with Comparables easier. For example, if (lessThan(b).test(a)) might be considered clearer than if (a.compareTo(b) < 0).

Some overloads may seem silly, like zero() and zero(i), since it might seem like a method reference such as Predicates::zero could be used wherever Predicates.zero() would be used. However, method references can unfortunately not be treated as function literals representing a functional interface instance. So, for example, while (Predicates::zero).negate() is not allowed, Predicates.zero().negate) is.

  • Nested Class Summary

    Nested Classes
    Modifier and Type Class Description
    static class  Predicates.Primitive  
  • Constructor Summary

    Constructors
    Constructor Description
    Predicates()  
  • Method Summary

    Modifier and Type Method Description
    static java.util.function.Predicate<java.lang.Integer> atLeast​(java.lang.Integer n)
    atLeast(b).test(a) ⇔ a ≥ b.
    static <T extends java.lang.Comparable<? super T>>
    java.util.function.Predicate<T>
    atLeast​(T b)
    atLeast(b).test(a) ⇔ a ≥ b.
    static java.util.function.Predicate<java.lang.Integer> atMost​(java.lang.Integer n)
    atMost(b).test(a) ⇔ a ≤ b.
    static <T extends java.lang.Comparable<? super T>>
    java.util.function.Predicate<T>
    atMost​(T b)
    atMost(b).test(a) ⇔ a ≤ b.
    static java.util.function.Predicate<java.lang.Integer> between​(java.lang.Integer min, java.lang.Integer max)
    between(a, b).test(c) ⇔ a ≤ c ≤ b.
    static <T extends java.lang.Comparable<? super T>>
    java.util.function.Predicate<T>
    between​(T min, T max)
    between(a, b).test(c) ⇔ a ≤ c ≤ b.
    static boolean empty​(java.lang.String s)  
    static <T> boolean empty​(java.util.Collection<T> c)  
    static <T> java.util.function.Predicate<java.util.Collection<T>> emptyCollection()  
    static java.util.function.Predicate<java.lang.String> emptyString()  
    static java.util.function.Predicate<java.lang.Integer> greaterThan​(java.lang.Integer n)
    greaterThan(b).test(a) ⇔ a > b.
    static <T extends java.lang.Comparable<? super T>>
    java.util.function.Predicate<T>
    greaterThan​(T b)
    greaterThan(b).test(a) ⇔ a > b.
    static java.util.function.Predicate<java.lang.Object> isNull()  
    static boolean isNull​(java.lang.Object o)  
    static java.util.function.Predicate<java.lang.Integer> lessThan​(java.lang.Integer n)
    lessThan(b).test(a) ⇔ a < b.
    static <T extends java.lang.Comparable<? super T>>
    java.util.function.Predicate<T>
    lessThan​(T b)
    lessThan(b).test(a) ⇔ a < b.
    static java.util.function.Predicate<java.lang.Integer> negative()  
    static boolean negative​(int i)  
    static java.util.function.Predicate<java.lang.Object> nonNull()  
    static boolean nonNull​(java.lang.Object o)  
    static java.util.function.Predicate<java.lang.Integer> outside​(java.lang.Integer min, java.lang.Integer max)
    outside(a, b).test(c) ⇔ c < a ∨ c > b.
    static <T extends java.lang.Comparable<? super T>>
    java.util.function.Predicate<T>
    outside​(T min, T max)
    outside(a, b).test(c) ⇔ c < a ∨ c > b.
    static java.util.function.Predicate<java.lang.Integer> positive()  
    static boolean positive​(int i)  
    static java.util.function.Predicate<java.lang.Integer> zero()  
    static boolean zero​(int i)  

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • Predicates

      public Predicates()
  • Method Details

    • emptyString

      public static java.util.function.Predicate<java.lang.String> emptyString()
    • empty

      public static boolean empty​(java.lang.String s)
    • emptyCollection

      public static <T> java.util.function.Predicate<java.util.Collection<T>> emptyCollection()
    • empty

      public static <T> boolean empty​(java.util.Collection<T> c)
    • isNull

      public static java.util.function.Predicate<java.lang.Object> isNull()
    • isNull

      public static boolean isNull​(java.lang.Object o)
    • nonNull

      public static java.util.function.Predicate<java.lang.Object> nonNull()
    • nonNull

      public static boolean nonNull​(java.lang.Object o)
    • zero

      public static boolean zero​(int i)
    • positive

      public static boolean positive​(int i)
    • negative

      public static boolean negative​(int i)
    • zero

      public static java.util.function.Predicate<java.lang.Integer> zero()
    • positive

      public static java.util.function.Predicate<java.lang.Integer> positive()
    • negative

      public static java.util.function.Predicate<java.lang.Integer> negative()
    • lessThan

      public static java.util.function.Predicate<java.lang.Integer> lessThan​(java.lang.Integer n)
      lessThan(b).test(a) ⇔ a < b.
    • greaterThan

      public static java.util.function.Predicate<java.lang.Integer> greaterThan​(java.lang.Integer n)
      greaterThan(b).test(a) ⇔ a > b.
    • atLeast

      public static java.util.function.Predicate<java.lang.Integer> atLeast​(java.lang.Integer n)
      atLeast(b).test(a) ⇔ a ≥ b.
    • atMost

      public static java.util.function.Predicate<java.lang.Integer> atMost​(java.lang.Integer n)
      atMost(b).test(a) ⇔ a ≤ b.
    • between

      public static java.util.function.Predicate<java.lang.Integer> between​(java.lang.Integer min, java.lang.Integer max)
      between(a, b).test(c) ⇔ a ≤ c ≤ b.
    • outside

      public static java.util.function.Predicate<java.lang.Integer> outside​(java.lang.Integer min, java.lang.Integer max)
      outside(a, b).test(c) ⇔ c < a ∨ c > b.
    • lessThan

      public static <T extends java.lang.Comparable<? super T>> java.util.function.Predicate<T> lessThan​(T b)
      lessThan(b).test(a) ⇔ a < b.
    • atMost

      public static <T extends java.lang.Comparable<? super T>> java.util.function.Predicate<T> atMost​(T b)
      atMost(b).test(a) ⇔ a ≤ b.
    • greaterThan

      public static <T extends java.lang.Comparable<? super T>> java.util.function.Predicate<T> greaterThan​(T b)
      greaterThan(b).test(a) ⇔ a > b.
    • atLeast

      public static <T extends java.lang.Comparable<? super T>> java.util.function.Predicate<T> atLeast​(T b)
      atLeast(b).test(a) ⇔ a ≥ b.
    • between

      public static <T extends java.lang.Comparable<? super T>> java.util.function.Predicate<T> between​(T min, T max)
      between(a, b).test(c) ⇔ a ≤ c ≤ b.
    • outside

      public static <T extends java.lang.Comparable<? super T>> java.util.function.Predicate<T> outside​(T min, T max)
      outside(a, b).test(c) ⇔ c < a ∨ c > b.