函数式接口
函数式接口
函数式接口:有且只有一个抽象方法的,可以有多个非抽象方法的接口,主要用于 Lambda 表达式
例如:
public interface Runnable {
public abstract void run();
}
public interface Function<T, R> {
R apply(T t);
default <V> Function<V, R> compose(Function<? super V, ? extends T> before) {
Objects.requireNonNull(before);
return (V v) -> apply(before.apply(v));
}
default <V> Function<T, V> andThen(Function<? super R, ? extends V> after) {
Objects.requireNonNull(after);
return (T t) -> after.apply(apply(t));
}
static <T> Function<T, T> identity() {
return t -> t;
}
}@FunctionalInterface :用于检查是否符合函数式接口
Since jdk 1.8 ,java.util.function 包中主要是这四个方法,其他都是四个方法的拓展
/* |
/* |
/* |
/* |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 Heroxin!
评论