Interface CharPredicate

  • Functional Interface:
    This is a functional interface and can therefore be used as the assignment target for a lambda expression or method reference.

    @FunctionalInterface
    public interface CharPredicate
    Function-Pointer Input: char Output: boolean.

    This is similar to Java's IntPredicate, except it explicity requires a char type in it's lambda 'test' method.


    • Method Detail

      • test

        🡇     🗕  🗗  🗖
        boolean test​(char c)
        Evaluates this predicate on the given argument.

        FunctionalInterface Target-Method:
        This method corresponds to the @FunctionalInterface Annotation's method requirement. It is the only non-default, non-static method in this interface, and may be the target of a Lambda-Expression or '::' (double-colon) Function-Pointer.
        Parameters:
        c - primitive-char (character) input argument.
        Returns:
        TRUE if the input argument matches this predicate, and FALSE otherwise.
      • and

        🡅  🡇     🗕  🗗  🗖
        default CharPredicate and​(CharPredicate other)
        Returns a composed predicate that represents a short-circuiting logical 'AND' of this predicate and another. When evaluating the composed predicate, if this predicate is FALSE, then the other predicate is not evaluated.

        Any exceptions thrown during evaluation of either predicate are relayed to the caller; if evaluation of this predicate throws an exception, the other predicate will not be evaluated.
        Parameters:
        other - A predicate that will be logically-AND'ed with this predicate
        Returns:
        A composed predicate that represents the short-circuiting logical 'AND' of this predicate and the other predicate
        Throws:
        java.lang.NullPointerException - if parameter 'other' is null.
        Code:
        Exact Method Body:
         if (other == null)
             throw new NullPointerException("null has been passed to parameter 'other'");
        
         return (char c) -> this.test(c) && other.test(c);
        
      • negate

        🡅  🡇     🗕  🗗  🗖
        default CharPredicate negate()
        Returns a predicate that represents the logical negation of this predicate.
        Returns:
        A predicate that represents the logical negation of this predicate
        Code:
        Exact Method Body:
         return (char c) -> ! this.test(c);
        
      • or

        🡅     🗕  🗗  🗖
        default CharPredicate or​(CharPredicate other)
        Returns a composed predicate that represents a short-circuiting logical 'OR' of this predicate and another. When evaluating the composed predicate, if this predicate is TRUE, then the other predicate is not evaluated.

        Any exceptions thrown during evaluation of either predicate are relayed to the caller; if evaluation of this predicate throws an exception, the other predicate will not be evaluated.
        Parameters:
        other - a predicate that will be logically-ORed with this predicate
        Returns:
        a composed predicate that represents the short-circuiting logical 'OR' of this predicate and the other predicate
        Throws:
        java.lang.NullPointerException - if parameter 'other' is null.
        Code:
        Exact Method Body:
         if (other == null)
             throw new NullPointerException("null has been passed to parameter 'other'");
        
         return (char c) -> this.test(c) || other.test(c);