有没有办法对只有根(DefaultMutableTreeNode)的已经创建的树进行排序?它具有随机顺序的文件夹和文件(具有层次结构)。是否可以按字母顺序在文件顶部显示文件夹?
问问题
930 次
1 回答
2
您可以使用以下递归方法来实现,
public static DefaultMutableTreeNode sortTree(DefaultMutableTreeNode root) {
{
for (int i = 0; i < root.getChildCount() - 1; i++) {
DefaultMutableTreeNode node = (DefaultMutableTreeNode) root
.getChildAt(i);
String nt = node.getUserObject().toString();
for (int j = i + 1; j <= root.getChildCount() - 1; j++) {
DefaultMutableTreeNode prevNode = (DefaultMutableTreeNode) root
.getChildAt(j);
String np = prevNode.getUserObject().toString();
System.out.println(nt + " " + np);
if (nt.compareToIgnoreCase(np) > 0) {
root.insert(node, j);
break;
}
}
if (node.getChildCount() > 0) {
node = sortTree(node);
}
}
return root;
}
}
于 2013-02-20T11:13:06.020 回答