将int转换为布尔值的更好方法
本文关键字:更好 方法 布尔值 int 转换 | 更新日期: 2023-09-27 18:01:33
输入的int
值仅由1或0组成。我可以通过写一个if else
语句来解决这个问题。
难道没有办法把int
转换成boolean
吗?
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
不会对此进行检查;CCD_ 12也不会。
我认为这是最简单的方法:
int i=0;
bool b=i==1;