消費型接口: Consumer< T> void accept(T t)有參數,無返回值的抽象方法;
供給型接口: Supplier < T> T get() 無參有返回值的抽象方法;
以stream().collect(Collector collector)為例:
比如:
斷定型接口:Predicate boolean test(T t):有參,但是返回值類型是固定的boolean
比如: steam().filter()中參數就是Predicate
函數型接口: Function R apply(T t)有參有返回值的抽象方法;
比如: steam().map() 中參數就是Function;reduce()中參數BinaryOperator(ps: BinaryOperatorextends BiFunction)