Take the 2-minute tour ×

I work with DefaultMutableTreeNode, and it has methods depthFirstEnumeration(), breadthFirstEnumeration() and children() that return Enumeration of tree nodes.

I need to use the returned Enumeration multiple times, but I can't find any method like reset() in Enumeration. It seems like I only can get all the elements just once, and then call depthFirstEnumeration() again to get new Enumeration, it seems not to be a good solution.

Of course, I can get all the elements from Enumeration and convert it to any another reusable representation, but is there really a way to use Enumeration multiple times?

share|improve this question
add comment

1 Answer

up vote 4 down vote accepted

No that is not possible with Enumeration. On this subject, java doc says:


Notice the one at a time which means that if you want to manipulate the Enumeration as a list then you will have to convert it. You can create a List when you first request the Enumeration. This way you could use and manipulate it however you wish.

Enumeration e = ...
ArrayList aList = Collections.list(e);
share|improve this answer
add comment

Your Answer


