java8-lambda实战
前言 java8推出已经很久了,然而其新特性却几乎没有怎么用过。原因是既然已有的只是满足需求何必去学习新的?然而,随着敲代码越来越多,业务上有很多臃肿繁琐的判断校验之类的代码,使得代码很长而且可读性很差。于是,重新捡起了java8。 [TOC] 实际用法 这里是实际代码中使用过的简单套式做法,随时更新。 list过滤 将满足需求的list元素筛选出来。 filter 返回一个boolean值,true的时候通过并放入一个stream里。 接收一个参数list,需要根据元素的某些条件来判断是否满足需求,将满足需求或者不满足需求的元素拿出来。这个正常代码也简单,遍历list,if判断,add赋值到结果集。然而,这个串代码仅仅是一个方法的前置校验部分,这会使得这个方法臃肿难以阅读。虽然重构提取函数可以提高可读性,但分散的代码管理也是麻烦。所以,java8的流式函数编程就适合: List<TipUI> badList = tips.stream().filter(tipUI -> StringUtils.isBlank(tipUI.getGaiaId())).collect(Collectors.toList()); list重组 操作list元素中的部分属性构建新的list map 用来转换元素 有个users列表,我想要或者这些user的id列表。 @Test public void