Interface IntIntLongPred

  • 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 IntIntLongPred
    Function-Pointer Input: int, int, long Output: boolean.

    This is a 'Predicate' with the usual 'test(...)' method, but actually accepts three primitive-type parameters as follows:

    1. 'int'
    2. 'int'
    3. 'long'


    The output of the test(...) method is, naturally, a boolean.


    • Method Detail

      • test

        🡇     🗕  🗗  🗖
        boolean test​(int i1,
                     int i2,
                     long l)
        Evaluates this predicate on the given arguments.

        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:
        i1 - The first integer argument to the predicate.
        i2 - The second integer argument to the predicate.
        l - The long argument to the predicate.
      • and

        🡅  🡇     🗕  🗗  🗖
        default IntIntLongPred and​(IntIntLongPred 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 (int i1, int i2, long l) ->
             this.test(i1, i2, l) && other.test(i1, i2, l);
        
      • negate

        🡅  🡇     🗕  🗗  🗖
        default IntIntLongPred 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 (int i1, int i2, long l) -> ! this.test(i1, i2, l);
        
      • or

        🡅     🗕  🗗  🗖
        default IntIntLongPred or​(IntIntLongPred 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 (int i1, int i2, long l) ->
             this.test(i1, i2, l) || other.test(i1, i2, l);