从枚举中获取整数值

Ant*_*ony 22 c# enums

我正在制作一个基本的战舰游戏,以帮助我的C#技能.现在我对枚举有点麻烦.我有:

enum game : int
{
    a=1,
    b=2,
    c=3,
}
Run Code Online (Sandbox Code Playgroud)

我希望播放器传递输入"C",一些代码返回整数3.我如何设置它以获取字符串var(string pick;)并使用此枚举将其转换为正确的int?我正在阅读的这本书有点令人困惑

R. *_*des 52

只需解析字符串并转换为int.

var number = (int)((game) Enum.Parse(typeof(game), pick));
Run Code Online (Sandbox Code Playgroud)

  • 这里的“ pick”是什么? (2认同)

Mua*_*Dib 14

// convert string to enum, invalid cast will throw an exception
game myenum =(game) Enum.Parse(typeof(game), mystring ); 

// convert an enum to an int
int val = (int) myenum;

// convert an enum to an int
int n = (int) game.a; 
Run Code Online (Sandbox Code Playgroud)


kno*_*opx 5

只是进行类型转换?

int a = (int) game.a
Run Code Online (Sandbox Code Playgroud)