1.创建树结构的类

@Data
public class TreeNode {private Integer id;private Integer parentId;private String name;private List<TreeNode> children;}

2.构建树结构

 public static List<TreeNode> getTree(){//获取父节点List<TreeNode> collect = trees.stream().filter(m -> m.getParentId() == 0).map((m) -> {m.setChildren(getChildrenList(m, trees));return m;}).collect(Collectors.toList());return collect;}/*** 获取子节点列表* @param tree* @param list* @return*/public static List<TreeNode> getChildrenList(TreeNode tree, List<TreeNode> list){List<TreeNode> children = list.stream().filter(item -> Objects.equals(item.getParentId(), tree.getId())).map((item) -> {item.setChildren(getChildrenList(item, list));return item;}).collect(Collectors.toList());return children;}

java8 Steam 构建树结构相关推荐

  1. Java8 Steam API中groupingBy和flatMap方法的使用

    1. groupingBy分组器 /*** 使用java8 stream groupingBy操作,按城市分组list*/ @Test public void groupingByTest() {Ma ...

  2. java8 steam常用操作

    java8 stream常用操作 遍历 list.stream().forEach(System.out::println); 获取实体list某个字段集合 list.stream().map(e - ...

  3. java8 steam流在当前数据对象上的操作。判断list中的属性值是否符合条件或者不为空,后赋值另一个属性的操作

    不需要生成新的对象数据,只需要在原对象数据上进行操作即可. newDatas.Stream().filter(i->i.getName() ==null || StringUtils.isNot ...

  4. java steam collect,Java8 Steam 随笔记录

    两个List集合过滤并根据比较找出差集,并将差集归类为List List changeBetLimitList = list.stream().filter(item -> item.getSi ...

  5. Java8 Steam 随笔记录

    2019独角兽企业重金招聘Python工程师标准>>> 两个List集合过滤并根据比较找出差集,并将差集归类为List List<BetLimit> changeBetL ...

  6. java页面的模糊查询_利用java8 steam实现代码中模糊搜索以及分页实现

    实现目标 image.png 朋友让实现在后台代码中实现模糊查询; 上代码 public class demoTest { List userzList = Lists.list( new Userz ...

  7. 企业级Java开发树结构数据封装(开发必用)

    树结构数据封装 前言 一.树结构表模式 二.树结构案例 2.1 原生Java递归循环实现 2.1.1 创建实例对象 2.1.2 编写测试类 2.1.3 返回Json结果集 2.2 使用Jdk的Stre ...

  8. Java构建递归树工具类

    Java构建树结构工具类 import java.util.ArrayList; import java.util.List;public interface TreeUtil {/*** 节点树抽象 ...

  9. JAVA构建树状结构

    记一下自己在展示树状结构时候的几个写法,一个是确定有几个层级的,用于只有两三个层级的树状结构,写法简单一点.还有就是不确定有几个层级,也可能1个,也可能4个或者更多. 先说一下确定有几个层级的写法 这 ...

最新文章

  1. php 抽象类 接口 区别,PHP中抽象类、接口的区别与选择分析
  2. 如何使用Android studio创建签名
  3. Ant Design Pro 改变默认启动端口号
  4. Python 前端的第三方库
  5. matlab验证对称三相电路,不对称三相电路中,中线的电流为()。 A.0 B. C. D....
  6. 1G、3G都失败了,5G也会失败吗?
  7. python中object转为float_object格式怎样无损转换成float64格式
  8. 开源素材网_22个用于广告素材的开源工具
  9. 阿里巴巴技术大牛赏鉴
  10. 古今地名对照总表 按笔划数排序 强烈推荐的资料
  11. iview中的Select选择器
  12. matlab定义sliced类型,Sliced Variables
  13. SNARK性能及安全——Prover篇
  14. Java计算圆、长方形、正方形的面积及周长,并比较打印各个图形的大小
  15. math_角函数反三角函数诱导公式三角/反三角恒等式
  16. 分享个神途游戏的辅助脚本,这类传奇手游能用的挂机工具
  17. 秋招面试之测试开发绿盟
  18. pyinstaller使用多帧ICO图标
  19. 动软.NET系统框架发布免费版本
  20. 以太网100Mhz频率为什么可以达到带宽1000Mbps

热门文章

  1. react基础知识2
  2. 程序员必备:10分钟搞懂各种编码丨另附实战案例
  3. 算法:换钱的最少货币数
  4. 全球与中国AirPods保护套市场深度研究分析报告
  5. 【推荐系统多任务学习MTL】MMoE论文精读笔记(含代码实现)
  6. 对于spring boot的理解
  7. 资产监测技术中关于GPS定位工具中的PDOP参数
  8. [数据结构]——单调栈
  9. Tryhackme-h4cked
  10. Bray0-1.pcapng(Tomcat)