/**
* 函数式接口
* @param supplier 要去做什么事情 get获取到做的事情的返回值
*/
public static void supplierTest(Supplier<Integer> supplier){
Integer max = supplier.get();
System.out.println(max);
}
/**
* 消费者
* @param consumer
*/
public static void consumerTest(Consumer<Integer> consumer){
consumer.accept(1);
}
/**
* 消费者
* @param consumer1
* @param consumer2
*/
public static void consumer(Consumer<String> consumer1,Consumer<String> consumer2){
consumer1.andThen(consumer2).accept("???");
}
public static void main(String[] args) {
supplierTest(()->{
int arr[]={22,23,44,11,32,12,21};
Arrays.sort(arr);
return arr[arr.length-1];
});
consumerTest((msg)->{
System.out.println(msg);
});
/**
* 先处理msg1 然后处理 msg2
*/
consumer(msg1->{
System.out.println("msg1");
}, msg2->{
System.out.println("msg2");
});
}