常用函数式接口_Consumer

Java8在java.util.function包下预定义了大量的函数式接口供我们使用

我们重点来学习下面的4个接口:

1、Supplier接口

2、Consumer接口

3、Predicate接口

4、Function接口

 

Consumer接口在java.util.function包下。该接口有一个泛型,即我们看到的。该接口有一个@FunctionalInterface注解,说明是函数式接口 该接口表示接收单个输入参数并且不返回结果的操作。可以理解为该接口是一个消费性的接口,它消费的数据的数据类型又泛型指定

该接口有两个方法如下

方法作用
accept(T t)参数是泛型指定的数据,对给定的参数执行此操作 无返回值
andThen(Consumer<? super T> after)返回一个组合的Consumer,它按顺序执行此操作,然后执行after操作 返回值的是default Consumer

get方法不需要参数,get方法会按照某种实现逻辑(由Lambda表达式实现)返回一个数据

 

常用函数式接口_Consumer的练习

 

Consumer接口练习_打印信息

练习: 1、String[] strArray={"张三,18","李四,19","王五,20"}; 2、字符串数组中有多条信息,请按照格式: "姓名:XX。年龄:XX"的格式将信息打印出来 难点:姓名和年龄数据在同一个字符串数组里面。我们要使用逗号将这两个数据分割出来

要求: 1、把打印姓名的动作作为第一个Consumer接口的Lambda实例 2、把打印年龄的动作作为第二个Consumer接口的Lambda实例 3、将两个Consumer接口按照顺序组合到一起使用

 

Consumer接口练习_打印信息的练习