我使用DefaultMutableTreeNode,它有方法depthFirstEnumeration(),breadthFirstEnumeration()并children()返回Enumeration树节点.
我需要使用返回Enumeration多次,但我找不到任何方法就像reset()在Enumeration.似乎我只能获得所有元素一次,然后depthFirstEnumeration()再次调用以获得新元素Enumeration,这似乎不是一个好的解决方案.
当然,我可以从中获取所有元素Enumeration并将其转换为任何其他可重用的表示形式,但是真的有Enumeration多种方法可以使用吗?
不,这是不可能的Enumeration.关于这个主题,java doc说:
实现Enumeration接口的对象生成一系列元素,一次一个.
注意一次一个,这意味着如果你想操作Enumeration列表然后你将不得不转换它.您可以在第一次请求时创建一个列表Enumeration.这样你就可以根据自己的意愿使用和操纵它.
Enumeration e = ...
ArrayList aList = Collections.list(e);
Run Code Online (Sandbox Code Playgroud)