java.util.function包的使用

本文介绍了Java `java.util.function`包中的Supplier、Consumer和Predicate三个函数式接口。Consumer用于无返回值的单参数操作,如示例中的accept方法和andThen方法。Supplier接口则只有一个get()方法,适用于需要提供值但不需要输入的情景,例如服务调用失败后的重试策略。Predicate接口接受一个参数并返回一个布尔值,常见于条件判断。
摘要由CSDN通过智能技术生成

Consumer

Consumer是一个函数式接口,表示接受一个参数,没有返回结果。

@FunctionalInterface
public interface Consumer<T> {
    void accept(T t);

    default Consumer<T> andThen(Consumer<? super T> after) {
        Objects.requireNonNull(after);
        return (T t) -> { accept(t); after.accept(t); };
    }
}

下面就是accept方法的使用,理解为这就是一个函数, 函数的入参必须要有一个,返回为void就行,最后那种写法就是因为println的入参只有一个String类型的所以才满足。

Consumer<String> consumer = new Consumer<String>() {
            @Override
            public void accept(String s) {
                System.out.println(s);
            }
        };
        consumer.accept("hello");

        consumer = x ->{
            System.out.println(x);
        };

        consumer.accept("hello");

        consumer = System.out::println;

        co
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值