乐趣区

JDK8新特性常用函数接口常用的函数式接口Consumer接口二andThen

package com.itheima.demo05.Consumer;

import java.util.function.Consumer;

/*
Consumer 接口的默认方法 andThen
作用: 需要两个 Consumer 接口, 可以把两个 Consumer 接口组合到一起, 在对数据进行消费

例如:

Consumer<String> con1
Consumer<String> con2
String s = "hello";
con1.accept(s);
con2.accept(s);
连接两个 Consumer 接口  再进行消费
con1.andThen(con2).accept(s); 谁写前边谁先消费 

*/
public class Demo02AndThen {

// 定义一个方法, 方法的参数传递一个字符串和两个 Consumer 接口,Consumer 接口的泛型使用字符串
public static void method(String s, Consumer<String> con1 ,Consumer<String> con2){//con1.accept(s);
    //con2.accept(s);
    // 使用 andThen 方法, 把两个 Consumer 接口连接到一起, 在消费数据
    con1.andThen(con2).accept(s);//con1 连接 con2, 先执行 con1 消费数据, 在执行 con2 消费数据
}

public static void main(String[] args) {
    // 调用 method 方法, 传递一个字符串, 两个 Lambda 表达式
    method("Hello",
            (t)->{
                // 消费方式: 把字符串转换为大写输出
                System.out.println(t.toUpperCase());
            },
            (t)->{
                // 消费方式: 把字符串转换为小写输出
                System.out.println(t.toLowerCase());
            });
}

}

退出移动版