java8的lambda表达式提供了许多方便的功能,同时也提供了几个简单的函数式接口,
方便用户的使用。
下面是几个函数式接口的例子。
import java.util.function.Consumer;
import java.util.function.Function;
import java.util.function.Predicate;
import java.util.function.Supplier;
public class FinalTest {
//功能型函数,调用apply方法,传入一个参数,返回一个结果
public Function<String, String> a = (String a) -> a + " !";
//消费型函数,调用accept方法,传入一个参数,不返回结果
public Consumer<String> b=
(String a)->{System.out.println(a+" !"); return;};
//供给型函数,调用get方法,不必传入参数,得到一个返回值
public Supplier<String> c=()->"hello !";
//断言型函数,调用test方法,传入一个参数,得到一个布尔值
public Predicate<String> d=(String a)->{return a==null;};
public static void main(String[] args) {
FinalTest f=new FinalTest();
System.out.println(f.a.apply("tom"));
f.b.accept("bob");;
System.out.println(f.c.get());
System.out.println(f.d.test(null));
}
}