java8函数式编程之Consumer

9 篇文章 1 订阅
7 篇文章 0 订阅

https://www.cnblogs.com/lijingran/p/8708037.html

Consumer< T>接口接受一个T类型参数,没有返回值。

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); };
    }
}

简单示例:

public class Accept {
		public static void main(String[] args) {
			UserVo userVo=new UserVo();
			System.out.println("输出结果:"+userVo.getAccount());//输出结果:null
			setNullValues(userVo.getAccount(),"admin",(str) -> userVo.setAccount(str));
			System.out.println("输出结果:"+userVo.getAccount());//输出结果:admin
			
		}

		private static void setNullValues(Object object, String s, Consumer<String> consumer) {
			if(Objects.isNull(object)){
				consumer.accept(s);
			}
		}
}

由此可以延伸出更多的实际开发的用法

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值