输入int
值只有1或0。我可以通过写一个if else
语句来解决这个问题。
没有办法将其int
转换为 aboolean
吗?
int i = 0;
bool b = Convert.ToBoolean(i);
我假设0
手段false
(在许多编程语言中都是如此)。这意味着true
是not 0
(某些语言使用-1
另一些语言使用1
; 兼容两者都没有坏处)。所以假设“更好”意味着更少的打字,你可以写:
bool boolValue = intValue != 0;
开个玩笑,如果您只希望输入整数是零或一,那么您真的应该检查是否是这种情况。
int yourInteger = whatever;
bool yourBool;
switch (yourInteger)
{
case 0: yourBool = false; break;
case 1: yourBool = true; break;
default:
throw new InvalidOperationException("Integer value is not valid");
}
开箱即用Convert
不会检查这个;也不会yourInteger (==|!=) (0|1)
。
我认为这是最简单的方法:
int i=0;
bool b=i==1;