java8学习-java.util.function包

206 阅读1分钟

重要接口一览

接口 方法 描述
Consumer<T> void accept(T t) 接受对象,没有结果返回
Supplier<T> T get() 返回一个对象,不接受参数
Predicate<T> boolean test(T t) 接受对象,返回布尔值
Function<T, R> R apply(T t) 接受T对象,返回R对象

Consumer

字面意思消费,消费一个对象然而并没有结果返回,jdk应用比如:List的forEach方法

 Consumer<String> say = word -> System.out.println("choe says : " + word);
 say.accept("hi");

Supplier

字面意思提供者,返回一个对象但是不接受参数,jdk应用比如:Optional的orElseGet方法

Supplier<String> airSupply = () -> "Air Supply";
System.out.println(airSupply.get());

Predicate

字面意思断言,接受对象,判断是否满足指定条件,返回boolean,jdk应用比如:Stream的filter方法

Predicate<Integer> gte5 = i -> i >= 5;
System.out.println(gte5.test(6));
System.out.println(gte5.test(3));

Function

字面意思函数,接受一个对象,返回计算后的对象

Function<Integer, Integer> plus1 = i -> i + 1;
System.out.println(plus1.apply(5));