package com.itheima.demo05.Consumer;
import java.util.function.Consumer;
/**
* @author newcityman
* @date 2019/8/4 - 11:05
* 要求:
* 字符串数组中存在多条信息,请按照格式“姓名:xxx。性别:xx。”的格式将信息打印出来
* 要求将打印姓名的动作作为第一个Consumer接口的Lambda实例
* 打印性别的动作为第二个Consumer接口的Lambda实例
* 将俩个Consumer接口按照顺序“拼接”到一起
*
*/
public class Demo03Test {
// 定义一个方法,参数传递String类型对的数组和两个Consumer接口,泛型使用String
public static void printInfo(String[] arr, Consumer<String> con1,Consumer<String> con2){
// 遍历字符串数组
for (String message : arr) {
// 使用andThen方法连接两个Consumer接口,消费字符串
con1.andThen(con2).accept(message);
}
}
public static void main(String[] args) {
// 定义一个字符串类型的数组
String[] arr ={"张明银,男","李敏,女","胡敏,男"};
// 调用printInfo方法,传递一个字符串数组和两个Lambda表达式
printInfo(arr,(message)->{
// 对message进行切割,获取姓名,并按照指定的格式输出
String name = message.split(",")[0];
System.out.print("姓名:"+name);
},(message)->{
String name = message.split(",")[1];
System.out.println("。性别:"+name+"。");
});
}
}
原文:https://www.cnblogs.com/newcityboy/p/11297662.html