package DemoTest01;

import java.util.function.Consumer;

/*
字符串数组中有多条信息,请按照格式:“姓名:XX,年龄:XX"的格式将信息打印出来

要求:

把打印姓名的动作作为第一个Consumer接口的Lambda实例

把打印年龄的动作作为第二个Consumer接口的Lambda实例

将两个Consumer接口按照顺序组合到一起使用
 */
public class ConsumerTest {
    public static void main(String[] args) {
        String[] strArray = {"猪八戒,30", "唐三藏,35", "孙悟空,33"};
        // 调用方法,对数据进行操作,提取出所用的元素
        // 打印姓名,使用字符串的split方法分割字符串,获得姓名,观察数据,该字符串,有两部分组成,
        // 字符,数字,且同一样,即编号为0是字符,1是数字
        consumerprint(strArray, s -> System.out.print("姓名:" + s.split(",")[0]),
                s -> System.out.println(",年龄:" + Integer.parseInt(s.split(",")[1])));
        // 操作年龄,先对字符串进行分割,使用split方法
        // Integer.parseInt提取使用返回用十进制参数表示的整数值,即获取数值
        // 打印输出
    }

    private static void consumerprint(String[] str, Consumer<String> con1, Consumer<String> con2) {
        // 遍历数组得到每个参数字符串
        for (String s : str) {
            con1.andThen(con2).accept(s);
        }
    }
}