java8函数式编程之Consumer

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/lihua5419/article/details/82998523

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

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

猜你喜欢

转载自blog.csdn.net/lihua5419/article/details/82998523