天天看點

Java8特性—函數式接口:Predicate,Consumer,Function,Supplier

1.簡單介紹

首先,它還是一個接口,是以必須滿足接口最基本的定義。但它是一個特殊的接口:SAM類型的接口(Single Abstract Method)。可以在調用時,使用一個lambda表達式作為參數。

定義要求:

  • 隻能有一個抽象方法需要被實作
@FunctionalInterface
interface Converter<F, T> {
    T convert(F from);
}
           
static MeterFilter denyUnless(Predicate<Meter.Id> iff) {
        return new MeterFilter() {
            @Override
            public MeterFilterReply accept(Meter.Id id) {
                return iff.test(id) ? MeterFilterReply.NEUTRAL : MeterFilterReply.DENY;
            }
        };
    }
           

繼續閱讀