我有这样的枚举:
enum E{
a,
b
};
E enum1;
我想像这样分配一个长值:
long p =a;
我该怎么做?提出错误can't convert enum type to long
。
答案 0 :(得分:2)
在枚举调用getLong()中编写一个方法,并从那里返回所需的Long变量。你可以致电long foo = enum1.getLong()
。
你必须修改你的枚举。
public enum foo
enum1(longfoo) //longfoo is the long number you want to return from enum1.
private foo(Long longfoo){
this.longfoo = longfoo;
}
private Long longfoo;
public Long getLong(){
return longfoo;
}
}
答案 1 :(得分:0)
枚举有一个成员序号,你可以使用它。 http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html#ordinal()