importjava.util.ArrayList;
importjava.util.List;


publicclassFolder...{

publicFolder(Stringtitle)...{
this.title=title;
}

privateStringtitle;

privateListchildren=newArrayList();


publicvoidaddChild(Folderf)...{
children.add(f);
}


publicListgetChildren()...{
returnchildren;
}


publicvoidsetChildren(Listchildren)...{
this.children=children;
}


publicStringgetTitle()...{
returntitle;
}


publicvoidsetTitle(Stringtitle)...{
this.title=title;
}


publicStringtoString(StringlftStr,Stringappend)...{
StringBuilderb=newStringBuilder();
b.append(append+title);
b.append(" ");

if(children.size()>0)...{

for(inti=0;i<children.size()-1;i++)...{
b.append(lftStr+((Folder)children.get(i)).toString(lftStr+"│","├"));
}
b.append(lftStr+((Folder)children.get(children.size()-1)).toString(lftStr+"","└"));
}
returnb.toString();
}


publicstaticvoidmain(String[]args)...{
Folderroot=newFolder("菜单列表");
Folderf1=newFolder("开始菜单");
root.addChild(f1);
Folderf1_1=newFolder("程序");
f1.addChild(f1_1);
Folderf1_1_1=newFolder("附件");
f1_1.addChild(f1_1_1);
Folderf1_1_1_1=newFolder("娱乐");
f1_1_1.addChild(f1_1_1_1);
Folderf1_1_1_2=newFolder("娱乐2");
f1_1_1.addChild(f1_1_1_2);
Folderf1_2=newFolder("辅助工具");
f1.addChild(f1_2);
Folderf2=newFolder("MyDocuments");
root.addChild(f2);
Folderf3=newFolder("MyDocuments2");
root.addChild(f3);
System.out.println(root.toString("",""));
}
}
importjava.util.List;

publicclassFolder...{
publicFolder(Stringtitle)...{
this.title=title;
}
privateStringtitle;
privateListchildren=newArrayList();

publicvoidaddChild(Folderf)...{
children.add(f);
}

publicListgetChildren()...{
returnchildren;
}

publicvoidsetChildren(Listchildren)...{
this.children=children;
}

publicStringgetTitle()...{
returntitle;
}

publicvoidsetTitle(Stringtitle)...{
this.title=title;
}

publicStringtoString(StringlftStr,Stringappend)...{
StringBuilderb=newStringBuilder();
b.append(append+title);
b.append(" ");
if(children.size()>0)...{
for(inti=0;i<children.size()-1;i++)...{
b.append(lftStr+((Folder)children.get(i)).toString(lftStr+"│","├"));
}
b.append(lftStr+((Folder)children.get(children.size()-1)).toString(lftStr+"","└"));
}
returnb.toString();
}

publicstaticvoidmain(String[]args)...{
Folderroot=newFolder("菜单列表");
Folderf1=newFolder("开始菜单");
root.addChild(f1);
Folderf1_1=newFolder("程序");
f1.addChild(f1_1);
Folderf1_1_1=newFolder("附件");
f1_1.addChild(f1_1_1);
Folderf1_1_1_1=newFolder("娱乐");
f1_1_1.addChild(f1_1_1_1);
Folderf1_1_1_2=newFolder("娱乐2");
f1_1_1.addChild(f1_1_1_2);
Folderf1_2=newFolder("辅助工具");
f1.addChild(f1_2);
Folderf2=newFolder("MyDocuments");
root.addChild(f2);
Folderf3=newFolder("MyDocuments2");
root.addChild(f3);
System.out.println(root.toString("",""));
}
}
本文介绍了一个使用Java实现的文件夹结构打印程序。该程序通过递归的方式展示了一个模拟的文件系统结构,每个节点可以拥有子节点,形成树状结构,并以直观的形式输出到控制台。
662

被折叠的 条评论
为什么被折叠?



