3

我目前正在使用 C# 中的 Enums,但遇到了一个无法解决的问题。我试图“谷歌”周围,但我没有找到任何可靠和快速的东西。

我有一个枚举,它看起来像这样:

public enum Test {
   Hello = 1234,
   AnotherValue = 382
}

到目前为止看起来合法。现在出于测试目的,我尝试了以下操作:

int ToCheck = 382;
if(ToCheck == Test.Hello) { ... } // <-- that is the part which won't work.

它如何看起来正确?

感谢您的帮助。

4

3 回答 3

10
if(ToCheck == (int)Test.Hello)

或者

if((Test)ToCheck == Test.Hello)
于 2012-10-11T17:49:44.840 回答
1

我正在浏览更多内容,发现它的强制转换 (int) 有效。所以解决方案是:

if(ToCheck == (int) Test.Hello) { ... }

对不起!我希望这可以帮助任何人!

于 2012-10-11T17:50:29.113 回答
1

你可以试试

if(ToCheck == (int)Test.Hello) { ... }
于 2012-10-11T17:51:13.020 回答