Java的:使用枚举多次(Java: use Enumeration multiple times)

2019-06-24 04:28发布

和我一起工作DefaultMutableTreeNode ,具有方法depthFirstEnumeration() breadthFirstEnumeration()children()返回Enumeration树节点。

我需要使用返回Enumeration多次,但我无法找到像任何方法reset()Enumeration 。 好像我只可以得到所有的元素只有一次,然后调用depthFirstEnumeration()再次获得新的Enumeration ,这似乎不是一个很好的解决方案。

当然,我可以得到所有的元素Enumeration并将其转换为任何其他可重复使用的表示,但真的使用方式Enumeration多次?

Answer 1:

不,那是不可能的Enumeration 。 在这个问题上,java的医生说:

实现Enumeration接口的对象生成一系列元素,一次一个。

注意, 一次一个 ,这意味着,如果你要处理的Enumeration的列表,那么你将不得不转换。 您可以创建一个列表,当你第一次请求Enumeration 。 这样,你可以使用和操纵它按照自己的喜好。

Enumeration e = ...
ArrayList aList = Collections.list(e);


文章来源: Java: use Enumeration multiple times