很抱歉这个菜鸟问题。
假设我有一个像这样的枚举

public enum MyElementType {
TYPE_ONE,
TYPE_TWO,
TYPE_THREE;
}


当我想遍历该枚举时,我总是看到以下解决方案:

for(MyElementType type: MyElementType.values())
{
//do things
}


我想知道while循环是否存在可行的解决方案。
到处逛逛,我看到Enumeration接口公开了该方法
    hasMoreElements()
但我不知道如何将事物链接在一起。
有什么建议吗?

最佳答案

为什么要使用while循环而不是您通常看到的for-for?

无论如何,这很简单

Set<MyElementType> elements = EnumSet.allOf(MyElementType.class);
Iterator<MyElementType> it = elements.iterator();
while (it.hasNext()) {
    MyElementType el = it.next();
    // etc
}

// or
Iterator<MyElementType> it = Arrays.asList(MyElementType.values()).iterator();

关于java - 用while循环迭代一个枚举,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9479819/

10-12 15:42