这种如何能写成一句?

来源:4-5 Stream操作集合中的数据-下

Ksdl

2019-11-28 21:16

List<Department> menuTree = allDepartment.stream().filter(p -> StringUtils.isBlank(p.getParentId())).collect(Collectors.toList());
menuTree.forEach(nav -> nav.setChildren(getTree(nav.getId(), allDepartment)));


写回答 关注

1回答

  • 大牧莫邪
    2019-11-29 10:07:37
    allDepartment.stream().filter(p -> StringUtils.isBlank(p.getParentId())).forEach(nav -> nav.setChildren(getTree(nav.getId(), allDepartment)))


    这样试过没有呢,只要保证最终执行的是终端操作就OK啦。不过代码中还是不建议写过长的语句呢,在跨平台发布的时候容易因为换行符的不同而引起一些不必要的问题,所以老项目一般建议一行不超过80个字符,新项目一般建议一行不超过120个字符,可以参考一下哦

一课掌握Lambda表达式语法及应用

深入浅出,快速掌握Lambda表达式“如何用”“怎么用”

6618 学习 · 58 问题

查看课程

相似问题