消费型接口 : 将T作为输入,无返回值
调用方法 : void accept(T t);
用途 : 因为没有出参,常用于打印、发送短信等消费动作
典型应用,集合的 foreach
- /**
- *
- * @param
the type of the input to the operation - */
- @FunctionalInterface
- public interface Consumer
{ - void accept(T t);
- }
- public static void sendMsg(String phone, Consumer
consumer) { - consumer.accept(phone);
- }
- import java.util.Arrays;
- import java.util.List;
- import java.util.function.Consumer;
-
- @Slf4j
- public class ConsumerFunc {
- public static void main(String[] args) {
- Consumer
consumer = obj -> { - log.info(obj);
- log.info("调用短信接口、发送短信、打印日志等");
- };
- sendMsg("134XXXXXXXX", consumer);
-
- }
-
- public static void sendMsg(String phone, Consumer
consumer) { - consumer.accept(phone);
- }
- }

- import java.util.Arrays;
- import java.util.List;
- import java.util.function.Consumer;
-
- @Slf4j
- public class ConsumerFunc {
- public static void main(String[] args) {
- List
list = Arrays.asList("aaa", "bbb", "ccc", "ddd"); - list.forEach(s -> log.info(s));
-
- }
- }
