boolean.md
commit: 1804726424c5cbc97f3d9d4adf6236980e2ff7a1
本章译文最后维护日期:2021-2-10
let b: bool = true;
布尔型或布尔数是一种可以为*真(true
)或假(false
)*的原语数据类型。
这种类型的值可以使用字面量表达式创建,使用关键字 true
和 false
来表达对应名称的值。
该类型是此语言的预导入包的一部分,使用名称 bool
来表示。
布尔型的对象尺寸和对齐量均为1。false 的位模式为 0x00
, true 的位模式为 0x01
。其他的任何其他位模式的布尔型的象都是未定义的行为。
布尔型是多种表达式的操作数的类型:
注意:布尔型的行为类似于枚举类型,但它确实不是枚举类型。在实践中,这主要意味着构造函数不与类型相关联(例如没有
bool::true
这种写法)。
和其他所有的原语类型一样,布尔型实现了 Clone
、Copy
、Sized
、Send
和 Sync
这些 traits。
当使用带有布尔型的操作数的特定操作符表达式时,它们使用[布尔逻辑规则][boolean logic]进行计算。注意: 参见标准库文档中的相关操作运算。
b |
!b |
---|---|
true |
false |
false |
true |
a |
b |
a | b |
---|---|---|
true |
true |
true |
true |
false |
true |
false |
true |
true |
false |
false |
false |
a |
b |
a & b |
---|---|---|
true |
true |
true |
true |
false |
false |
false |
true |
false |
false |
false |
false |
a |
b |
a ^ b |
---|---|---|
true |
true |
false |
true |
false |
true |
false |
true |
true |
false |
false |
false |
a |
b |
a == b |
---|---|---|
true |
true |
true |
true |
false |
false |
false |
true |
false |
false |
false |
true |
a |
b |
a > b |
---|---|---|
true |
true |
false |
true |
false |
true |
false |
true |
false |
false |
false |
false |
a != b
等同于!(a == b)
a >= b
等同于a == b | a > b
a < b
等同于!(a >= b)
a <= b
等同于a == b | a < b