1
在monodroid中,我有一個返回Java.Lang.Enum對象的java綁定。如何將Java.Lang.Enum轉換爲整數?
當我嘗試將此對象轉換爲int時,它會拋出。
System.InvalidCastException: Cannot cast from source type to destination type.
這是我得到的調試器的即時窗口:
state
{OPENING}
base: {Java.Lang.Enum}
IsClosed: false
IsOpened: false
ThresholdClass: 0x1d200832
ThresholdType: {System.MonoType}
我很驚訝的是,一個枚舉不能轉換成一個int?
在其他語言中使用整數常量的情況下,通常可以在Java中使用枚舉而不進行任何轉換。值得花2-3個小時來看看基本的枚舉教程,看看你可以用它們做的基本事情。 – arcy 2013-04-05 18:53:07
我同意。如果可能,請避免引用Enum常量的序數位置。 (遺憾的是,我對Monodroid一無所知,所以我不知道如何使用Java模式。) – Bobulous 2013-04-05 18:54:50
@Arkanon:我期望枚舉序列是0索引的,所以'Cat.ordinal()'將是'0','Fish.ordinal()'將是'2'。 – 2013-04-05 21:19:06