Tree 是否将子树添加到主树?

Tree 是否将子树添加到主树?,tree,antlr,antlr3,abstract-syntax-tree,Tree,Antlr,Antlr3,Abstract Syntax Tree,我目前正在手动遍历树,而不是使用ANTLR/CommonTree执行树语法。我已经做了一些转换,我想将其中的一些移动到树的父级。它也可能是根 例如: 说这个AST,我想将块中的所有VARDECL语句移到树的根。 这样做:我得到一个例外 Exception in thread "main" java.util.ConcurrentModificationException at java.util.ArrayList$Itr.checkForComodification(Unknown

我目前正在手动遍历树,而不是使用ANTLR/CommonTree执行树语法。我已经做了一些转换,我想将其中的一些移动到树的父级。它也可能是根

例如:

说这个AST,我想将块中的所有VARDECL语句移到树的根。

这样做:我得到一个例外

Exception in thread "main" java.util.ConcurrentModificationException
    at java.util.ArrayList$Itr.checkForComodification(Unknown Source)
    at java.util.ArrayList$Itr.next(Unknown Source)

你知道我该怎么解决这个问题吗?提前谢谢

这听起来像是Java的问题。在枚举ArrayList(插入/删除)时,您似乎在操作它。如果要删除节点,请首先在单独的列表中收集候选节点。然后迭代该候选列表并从原始列表中删除任何候选列表