死磕Lambda表达式(六):Consumer、Predicate、Function复合
你的无畏来源于无知。——《三体》 在上一篇文章( 传送门 )中介绍了Comparator复合,这次我们来介绍一下其他的复合Lambda表达式。 Consumer复合 Consumer 接口中,有一个默认方法 andThen ,它的入参还是 Consumer 接口的实例。做完上一个 Consumer 的操作以后,再做当前 Consumer 的操作,就像工厂的流水线一样,比如: Consumer<Mask> brand = m -> m.setBrand("3M"); Consumer<Mask> type = m -> m.setType("N95"); Consumer<Mask> price = m -> m.setPrice(19.9); Consumer<Mask> print = System.out::println; brand.andThen(type) .andThen(price) .andThen(print) .accept(new Mask()); 上面的代码分别声明了4个 Consumer 接口的实例,然后再把它们组装成一个流水线,先把口罩品牌赋值为3M,再把口罩类型赋值为N95,再把口罩价格赋值为19.9,最后把口罩实例打印出来,运行结果如下: Mask{brand='3M', type='N95', price=19.9} 欢迎关注微信公众号: