0
for(MyEnum myEnum : MyEnum.values()){
count++;
}

但是有没有更好的方法使用 oridinal 或其他东西?

4

4 回答 4

9

怎么样:MyEnum.values().length

于 2013-08-02T09:37:46.140 回答
1

values() 返回数组。只需获取length它。

int size = MyEnum.values().length;
于 2013-08-02T09:38:40.207 回答
1

values()方法返回一个 T ( T[]) 类型的数组。只需通过 length 属性检索该数组的长度。

例子:

enum Operations {
    ADD, SUBTRACT, MULTIPLY
}

System.out.println Operations.values().length
于 2013-08-02T09:40:09.317 回答
0

您还可以通过以下方式接收枚举常量的序数值

for ( MyEnum value : MyEnum.values() )
{
    System.out.println( "ordinal: [" + value.ordinal() + "]" );
}

Java FTW!:D

于 2013-08-02T09:43:49.423 回答