'for'循环遍历Java中的枚举

我在Java中有一个针对主要和中间方向的enum

public enum Direction {
   NORTH,
   NORTHEAST,
   EAST,
   SOUTHEAST,
   SOUTH,
   SOUTHWEST,
   WEST,
   NORTHWEST
}

我怎样才能写一个迭代遍历每个enum值的for循环?


.values()

你可以在你的枚举上调用values()方法。

for (Direction dir : Direction.values()) {
  // do what you want
}

这个values()方法由编译器隐式声明。 所以它没有在Enum文档中列出。


枚举值#():

 for (Direction d : Direction.values()) {
     System.out.println(d);
 }

你可以这样做,如下所示:

for (Direction direction : EnumSet.allOf(Direction.class)) {
  // do stuff
}
链接地址: http://www.djcxy.com/p/2671.html

上一篇: A 'for' loop to iterate over an enum in Java

下一篇: Get int value from enum in C#