03 java8实战--常见函数式接口:Consumer

Java Consumer与BiConsumer接口详解
本文深入解析了Java中Consumer和BiConsumer接口的功能与应用。Consumer接口用于消费单个类型参数并执行特定操作,而BiConsumer接口则用于消费两个不同类型的参数。通过示例演示了如何使用这些接口进行字符串输出和苹果列表的颜色打印,以及如何组合两个字符串。

文章目录

1 Consumer

@FunctionalInterface
public interface Consumer<T> {

    /**
     * Performs this operation on the given argument.
     *
     * @param t the input argument
     */
    void accept(T t);
  • 接受一个T,无返回值,内部就是消费这个T来实现一些逻辑

比如简单的接受一个字符串T,实现控制台输出这个字符串

/**
     * @Description Consumer 入门
     * @Author wyaoyao
     * @Date 2020/8/24 8:52 下午
     * @Param
     * @Return
     * @Exception
     */
    @Test
    public void testConsumer() {
        Consumer<String> consumer = a->System.out.println(a);
        consumer.accept("Hello World");
    }
public void consumerApple(List<Apple> apples, Consumer<Apple> consumer) {
        for (Apple apple : apples) {
            consumer.accept(apple);
        }
    }
    @Test
    public void testConsumerApple(){
        List<Apple> apples = Arrays.asList(new Apple(ColorConstants.GREEN, 150), new Apple(ColorConstants.RED, 120));
        consumerApple(apples,apple -> System.out.println("current apple color is " + apple.getColor()));
    }

2 BiConsumer

  • 接受两个参数
@FunctionalInterface
public interface BiConsumer<T, U> {

    /**
     * Performs this operation on the given arguments.
     *
     * @param t the first input argument
     * @param u the second input argument
     */
    void accept(T t, U u);
 @Test
    public void testBiConsumer() {
        BiConsumer<String,String> consumer = (s1,s2) -> System.out.println(s1 + " " +s2);
        consumer.accept("Hello","Java");
    }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值