zoukankan      html  css  js  c++  java
  • 拆分字符串为树形结构

    package test;
    import java.util.ArrayList;
    import java.util.Calendar;
    import java.util.List;
    /**
    *拆分目录结构,这里拆分用小数点代替。
    *
    */
    public class RenameFile { public static void main(String[] args) throws IOException { List<String> rootStrs = new ArrayList<String>(); rootStrs.add("c.a.b.c"); rootStrs.add("d.a.b.c"); rootStrs.add("c.a.c.c"); rootStrs.add("c.b.b.c.1"); Dir root = new Dir("root"); for(String rootStr : rootStrs){ List<Dir> eachList = null; for(String str: rootStr.split("\.")){ if(eachList == null){ eachList = root.getChild(); } eachList = creatChild(str,eachList); } } } private static List<Dir> creatChild(String str,List<Dir> child){ //如果已经存在 for(Dir dirEle:child){ if(dirEle.getName().equals(str)){ return dirEle.getChild(); } } Dir dir = new Dir(str); child.add(dir); return dir.getChild(); } } class Dir{ String name; List<Dir> child = new ArrayList<Dir>(); Dir(String name){ this.name = name; } public String getName() { return name; } public void setName(String name) { this.name = name; } public List<Dir> getChild() { return child; } public void setChild(List<Dir> child) { this.child = child; } }
  • 相关阅读:
    沮丧
    实例讲解《Microsoft AJAX Library》(1):DomElement类
    linux0.12系统调用
    关于中断
    dd写img
    linux系统中堆栈的使用方法
    浅析程序的装载
    SourceInsight3.5序列号
    区分进程的逻辑地址空间中段和cpu分段机制中段的概念
    32位计算机的4G可寻址空间
  • 原文地址:https://www.cnblogs.com/zhimingxin/p/7650977.html
Copyright © 2011-2022 走看看