我想創建一個文件系統的JTree,通過給出rootfolder的路徑, 但是起初我試圖通過遞歸創建和打印節點到葉節點。我不明白爲什麼它不打印1級後,也許它不是調用createTree()遞歸...有人可以告訴我如何使它工作嗎?(int i = 0 is對外宣稱法)樹java的遞歸創建
public void createTree(String rootPath)
{
rootNode=new DefaultMutableTreeNode(rootPath);
File file=new File(rootPath);
if(file.isDirectory()&&file.list()!=null)
{
System.out.printf("\nThis folder contains %d files/folders\n" , file.list().length);
for(String node:file.list())
{
nodes[i]=new DefaultMutableTreeNode(node);
System.out.println(" - "+nodes[i]);
createTree(node);
i++;
}
}
else if(file.isFile())
{
nodes[i]=new DefaultMutableTreeNode(rootPath);
i++;
return;
}
else
return;
}
遞歸被調用,但是你把所有創建的子樹放在一起? –