区别就是这是两种完全不同的类型。类型不同,不管值是否是相同的,它就是不同,不应该把他们混为一谈。当然有些时候,编程语言的实现的过程中,它可能会比如一个bit用0来代表false, bit为1来代表true,但是从本质上说,这就是两个完全不同的类型,不能认为0==false,或者1==true。
区别就是这是两种完全不同的类型。类型不同,不管值是否是相同的,它就是不同,不应该把他们混为一谈。当然有些时候,编程语言的实现的过程中,它可能会比如一个bit用0来代表false, bit为1来代表true,但是从本质上说,这就是两个完全不同的类型,不能认为0==false,或者1==true。
否则两个不同类型还能垮类型进行各种比较和判断,这样只会造成各种混乱。
如果true是1, false是0的话,null是啥?在我看来,true应该是1, false是 1, null才是0。
不同语言有不同的设定,比如你自己都可以定义一个编程语言,bool值有三个,true/false/null。
比如dart的bool就是一个对象, 就允许为null,所以dart的boo可能是true也可能是fals还有可能是null。
延伸阅读:
什么是布尔值?
布尔值是“真” True 或“假” False 中的一个。动作脚本也会在适当时将值 True 和 False 转换为 1 和 0。布尔值经常与动作脚本语句中通过比较控制脚本流的逻辑运算符一起使用。
在经典逻辑中,少数可能的真值是真和假。但在其他逻辑中其他真值也是可能的: 模糊逻辑和其他形式的多值逻辑使用比简单的真和假更多的真值。
在代数上说,集合 {真,假} 形成了简单的布尔代数。可以把其他布尔代数用作多值逻辑中的真值集合,但直觉逻辑把布尔代数推广为 Heyting代数。
在 较好os理论中,较好os 的子对象分类器接管了真值集合的位置。
文章标题:编程语言中布尔值true,false和int类型1,0的区别,发布者:小编,转载请注明出处:https://worktile.com/kb/p/38869