java - 函数树使用什么数据结构

标签 java data-structures tree

Java 中是否有一种数据结构我应该用于这种情况: 目前,我有一个扁平的12000行的类,具有大量的功能。 每个函数只返回一个字符串。

public static String[] Account() {

  return new String [] {"The member's account number."};

}

问题是字符串实际上是一个层次结构。为了更轻松地查找和编辑字符串,我想将它们排列为索引:fname:字符串元组,可以很好地放在 JSON/XML 中。

10 / Account / 'The memb...'
11
12
 12.0
 12.1
  12.1.0
  12.1.1
  12.1.2
  12.1.3
 12.2
 12.3
 12.15
13

但是那将是一个元组树,而不是一个函数树。如何保留 getter 功能?

(我尝试创建接口(interface)层次结构,这解决了层次结构问题,但随后字符串到处都是。)

最佳答案

我将创建一个简单的 Node 类,其中包含父级、子级列表和用于创建分层 ID 的递归方法:

public class Node() {
    private int id;
    private String data;
    private Node parent;
    private List<Node> children;

    // Constructor, getters, etc..

    public String getFullId() {
        if (parent == null) {
            return String.valueOf(id) {
        }
        return parent.getFulld() + "." + id;
    }
}

关于java - 函数树使用什么数据结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53309268/

相关文章:

algorithm - 为什么我们通常在分而治之算法中分成两部分?

data-structures - 相关数据结构

data-structures - 在 Scala 中扩展现有的数据结构

c++ - 如何识别 AVL 树中的扰动节点?

java - 面向对象设计,设计一棵树

sql - 有没有简单的方法来查询节点的子级?

java - 在android中通过触摸在 Activity 之间滑动

java - 线程池中的线程局部内存泄漏

java - 我应该从可调用类的 call() 方法中抛出异常吗?

java - 如果我提供可选的月份和日期,如何将字符串转换为有效的日期格式