Java8函数式接口

通用的函数式接口

Function

接收T类型,返回R类型

public interface Function<T, R> {
    R apply(T t);
}

Supplier

不接收,返回T类型

public interface Supplier<T> {
    T get();
}

Consumer

接收T类型,不返回

public interface Consumer<T> {
    void accept(T t);
}

Predicate

接收T类型,返回boolean

public interface Predicate<T> {
    boolean test(T t);
}

BiFunction

接收T类型和U类型,返回R类型

public interface BiFunction<T, U, R> {
    R apply(T t, U u);   
}

UnaryOperator

Function的特例,接收T类型,返回T类型

public interface UnaryOperator<T> extends Function<T, T> {
}

BinaryOperator

BiFunction的特例,接收两个T类型,返回T类型

public interface BinaryOperator<T> extends BiFunction<T,T,T> {
}