当前位置: 首页 > news >正文

网站服务器做下载链接2345网址导航官网

网站服务器做下载链接,2345网址导航官网,橙象品牌设计,百度统计 wordpress在实际开发中经常会遇到返回树形结构的场景&#xff0c;特别是在处理文件系统或者是文件管理系统中。下面就介绍一下怎么将文件路径转成需要的树形结构。 在Java中&#xff0c;将List<String>转换成树状结构&#xff0c;需要定义一个树节点类&#xff08;TreeNode&#…

在实际开发中经常会遇到返回树形结构的场景,特别是在处理文件系统或者是文件管理系统中。下面就介绍一下怎么将文件路径转成需要的树形结构。

在Java中,将List<String>转换成树状结构,需要定义一个树节点类(TreeNode),然后遍历列表中的每个路径,将每个路径分割成多个部分,并根据这些部分构建树。下面是一个简单的实现示例:

首先,定义一个树节点类TreeNode

    public static class TreeNode {String val;Map<String, TreeNode> children;TreeNode(String val) {this.val = val;this.children = new HashMap<>();}void addChild(String val, TreeNode child) {children.put(val, child);}TreeNode getChild(String val) {return children.get(val);}}

然后,可以使用以下封装的代码将List<String>转换成树状结构:

public static Map<String, TreeNode> buildTree(List<String> paths, String split) {logger.info("[字符串转Tree结构]开始...params paths:{}", paths);if (paths == null || paths.isEmpty()) {return Collections.emptyMap();}Map<String, TreeNode> roots = new HashMap<>();for (String path : paths) {// 拆分路径String[] parts = path.split(split);if (parts.length == 0) {continue;}String rootVal = parts[0];TreeNode root = roots.get(rootVal);// 不存在,则创建它if (root == null) {root = new TreeNode(rootVal);roots.put(rootVal, root);}// 从根节点的子节点开始构建剩余路径TreeNode currentNode = root;for (int i = 1; i < parts.length; i++) {String part = parts[i];TreeNode child = currentNode.getChild(part);// 子节点不存在,则创建它if (child == null) {child = new TreeNode(part);currentNode.addChild(part, child);}// 移动到子节点,继续构建路径currentNode = child;}}return roots;}

有时候我们需要将结果展示,这个时候就需要封装一个printTree方法,printTree方法使用一个prefix 参数来保持适当的缩进,从而清晰地显示树状结构。它首先打印当前节点的名称,然后递归地调用自身来打印每个子节点,每次递归调用时都增加缩进。

    public static void outTreeHtmlStyle(TreeNode root, String prefix, StringBuilder sb) {if (root == null) {return;}String emptyFlag = "&nbsp;&nbsp;";sb.append(emptyFlag).append(prefix).append(root.val).append("</br>");for (TreeNode child : root.children.values()) {outTreeHtmlStyle(child, prefix + "|" + emptyFlag, sb);}}

最后在HTML中展示的效果如下:

http://www.shuangfujiaoyu.com/news/28860.html

相关文章:

  • 网站建设安全规划seo系统
  • 怎么做网站首页关键词seo排名培训
  • 512 做网站建站是什么意思
  • 老师让做网站怎么做软件外包平台
  • 商城网站建设公司爱问网站404页面怎么做
  • 怎样建设公司网站百度销售平台怎样联系
  • 武汉p2p网站建设公司南京企业网站排名优化
  • 安徽建设项目建设工程在线seo网站优化工具大全
  • 广州外贸营销型网站建设成都百度推广电话
  • 潍坊科技学院seo工资待遇 seo工资多少
  • 北京b2c网站制作一键优化表格
  • 网站推广该怎么做seo关键词优化软件怎么样
  • 装饰设计网站建设怎样在百度上做广告
  • 建设网站源码大连网络推广公司哪家好
  • 建设厅官方网站北京一站式推广平台
  • 如何自己做免费网站落实20条优化措施
  • 网站的基础建设百度指数名词解释
  • 有些网站为什么可以做资讯英文seo外链
  • 网站建设代理加盟小程序开发公司前十名
  • 网站建设设计公司类网站织梦模板(带手机端)设计外包网站
  • 影视网站如何做seo互联网运营推广是做什么的
  • 外贸网网站建设销售培训课程
  • 如何制作企业网页seo排名优化公司哪家好
  • ubuntu用wordpresswin优化大师有免费版吗
  • 网站文章页内链结构不好可以改吗大白兔网络营销策划书
  • 广州安全教育平台登陆百度官网优化
  • 在西宁做网站可以吗百度地图关键词排名优化
  • 新媒体营销工具有哪些女装标题优化关键词
  • reactjs 做的网站网站收录入口申请查询
  • 网站建设如何推广阿里指数查询官网入口