Enum type in Java : values() in for each loop
本问题已经有最佳答案,请猛点这里访问。
我对values()方法在Java的Enum类型中的工作方式有点好奇。
从Java规范文档中可以看出,我们可以在每个循环中迭代某个枚举类型的所有值。 例如
1 2 3 4 | for (Planet p : Planet.values()) { System.out.printf("Your weight on %s is %f%n", p, p.surfaceWeight(mass)); } |
我认为对于每个循环,迭代所有值。 在此调用中,我们将在每个循环调用中重复调用一个方法,以便如何对所有枚举类型进行迭代,或者values()方法使用某种迭代器。 有人可以帮助我提供此方法的实现文档吗?
1 2 3 4 5 6 | Planet[] vals = Planet.values(); for(int i=0; i<vals.length; i++) { Planet p = vals[i]; System.out.printf("Your weight on %s is %f%n", p, p.surfaceWeight(mass)); } |
方法
每个
调用
您是对的-
此数组可用于迭代,并且在每个迭代步骤中,您将获得此