如何循环遍历 Java 中的枚举? [复制]

Posted

技术标签:

【中文标题】如何循环遍历 Java 中的枚举? [复制]【英文标题】:How do I loop through an enum in Java? [duplicate] 【发布时间】:2013-05-16 12:11:41 【问题描述】:

假设我有一个这样的枚举:

public enum Numbers 
    ONE("Uno "),
    TWO("Dos "),
    THREE("Tres ");


private final String spanishName;

Numbers(String spanishName) 
    this.spanishName = spanishName;


public String getSpanishName() 
    return spanishName;

现在我有一个输出给定变量的方法。

public void output(String value) 
    printStream.print(value);

我想使用for 循环来输出枚举中的所有值。类似这样的东西:

for(/*each element in the enum*/) 
    //output the corresponding spanish name

最终我希望最终输出为Uno Dos Tres。如何使用枚举和 for 循环来做到这一点?

【问题讨论】:

@RaviThapliyal 您不会在 JavaDocs 的 Enum 下找到“.values()”。这是枚举类型的隐式方法。 【参考方案1】:
for (Numbers num : Numbers.values()) 
  // do what you want

看起来像重复: A 'for' loop to iterate over an enum in Java

【讨论】:

【参考方案2】:
for (Numbers n : Numbers.values()) 
   System.out.print(n.getSpanishName() + " ");

【讨论】:

谢谢 :) 这很有帮助!【参考方案3】:

使用这个:

for (Numbers d : Numbers .values()) 
     System.out.println(d);
 

【讨论】:

以上是关于如何循环遍历 Java 中的枚举? [复制]的主要内容,如果未能解决你的问题,请参考以下文章

Java如何循环遍历枚举类元素或者查看某元素是否存在

Java如何循环遍历枚举类元素或者查看某元素是否存在

java中使用枚举器遍历的一个小问题。

java怎么遍历一个枚举数组的所有集合?

如何循环遍历 Perl 目录中的文件? [复制]

c语言如何遍历枚举元素