JavaAPI是否具有表示层次结构的数据结构

JavaAPI是否具有表示层次结构的数据结构,java,data-structures,tree,Java,Data Structures,Tree,我有两门课;一个解释命令,并将这些命令发送给另一个执行它们的类。然后,我希望执行命令的类能够将执行结果发送回解释器类。问题是这些结果在本质上是层次性的 目前,我所知道的JavaAPI中唯一能让我做到这一点的就是DOM。我真的不想在DOM中胡闹,创建一个新文档,然后将它的一部分发送回另一个类;看起来就像一团乱。还有什么我可以使用的吗?如果你可以创建一个由节点组成的类,你真的需要一个专门的树数据结构吗?只需为结果使用类中的对象,例如Result,并为可能的子节点将字段添加到Result。如果需要,字

我有两门课;一个解释命令,并将这些命令发送给另一个执行它们的类。然后,我希望执行命令的类能够将执行结果发送回解释器类。问题是这些结果在本质上是层次性的


目前,我所知道的JavaAPI中唯一能让我做到这一点的就是DOM。我真的不想在DOM中胡闹,创建一个新文档,然后将它的一部分发送回另一个类;看起来就像一团乱。还有什么我可以使用的吗?

如果你可以创建一个由节点组成的类,你真的需要一个专门的树数据结构吗?只需为结果使用类中的对象,例如
Result
,并为可能的子节点将字段添加到
Result
。如果需要,字段也可以有type
Result

您可以尝试一些可用的数据结构,比如jdot


JDots(Java动态对象树软件)是一个库/框架,用于创建Java对象的动态树,对于主动方法通信/传播

您可以使用简化的DOM抽象和较少的样板代码,如JDOM。。。或者干脆用一些嵌套的地图来快速和肮脏

[result:true, childResults:[result:true, childResults:[], result:false, childResults:[]]] 
在那里抛出一些递归来把事情放在一起。。。鲍勃是你叔叔

编辑:


如果您需要在子结果中排序,您需要在其中添加一个列表。。。这在Java中可能有点混乱,但我在Groovy领域呆了太久,以至于它突然向我扑来。。列表和地图的语法糖使得像这样的东西很容易(太容易了?)。。。如果您可以控制该项目,那么您可能需要了解一点Groovy:)

我认为您需要的是命令模式,而不是API调用。我可能错了。
由于DOM是xml/html的产物,您是在谈论web应用程序吗?还有别的吗?

我不会考虑java数据结构化,而是考虑针对您的问题的相应设计模式


对于层次结构,我可以提出建议。

我想这就是我需要的……只是想看看在改造轮子之前它是否已经可用。我不认为这是改造轮子。每棵树都有不同的结构。节点的可能类型是什么?什么类型的节点可以是其他节点的子节点?子节点之间是否存在排序?最多可以有多少子节点?至少DOM被设计成一种非常特殊的树结构,表示SGML/XML。