在java中表示树层次结构

时间:2012-06-26 17:18:18

标签: java data-structures tree treeview

  

可能重复:
  Java tree data-structure?

我想在java中表示层次结构。层次结构可以是

形式
Key
|
|-Value1
|  |-Value11
|    |-Value111
|-Value2
|  |-Value22
|-Value3
|-Value4

有人能建议我在java中表示这种层次结构的最佳数据结构吗?

2 个答案:

答案 0 :(得分:6)

基本上你需要的只是一个可以容纳几个孩子并且你建模属性的结构。你可以用这样的类结构来表示它:

public class TreeNode {

    private Collection<TreeNode> children;
    private String caption;

    public TreeNode(Collection<TreeNode> children, String caption) {
        super();
        this.children = children;
        this.caption = caption;
    }

    public Collection<TreeNode> getChildren() {
        return children;
    }

    public void setChildren(Collection<TreeNode> children) {
        this.children = children;
    }

    public String getCaption() {
        return caption;
    }

    public void setCaption(String caption) {
        this.caption = caption;
    }

}

你可以看看这里,以便采取一些想法:Java tree data-structure?

答案 1 :(得分:5)

看到这个答案:

Java tree data-structure?

基本上,标准库中没有提供开箱即用的Tree表示,除了swing包中的JTree。

您可以自己推送(链接答案中提供的一些提示),也可以使用那个实际效果很好的提示。