有没有办法在没有条件语句的情况下从bool转换为整数(例如if语句)?
int intValue = boolValue ? 1 : 0;
答案 0 :(得分:2)
不,没有。您可以将此条件隐藏在其他方法调用(例如Convert.ToInt
)之后,或者更喜欢与实际if
不同的语法,但最后,在某个地方,会有条件。
答案 1 :(得分:0)
int intValue = Convert.ToInt32(boolValue));
答案 2 :(得分:0)
使用Convert.ToInt32(boolValue)
答案 3 :(得分:0)
尽管 nvoigt 的回答是完全正确的,但我可以再给你一些例子,只是为了好玩
NEVER!切勿使用此代码!它只是为了乐趣或与好友一起解决争执!)
首先,方法GetHashCode
完成了魔术(作为实现细节):
bool b = true;
int i = b.GetHashCode();
如果你想要一些更深奥的方法......嗯..欢迎你):
bool b = true;
int i = ~(b.ToString()[0] / 2) & 1;
记住! NEVER!