布尔(bool)类型可以有两个值:true 或 false。这种类型常用于记录某些操作的结果,以便处理这些结果。bool类型可用于存储比较的结果。
运算符 | 类别 | 示例表达式 | 结果 |
---|---|---|---|
== | 二元 | var1 = var2 == var3; | 如果var2等于var3,var1的值就是true,否则为false |
!= | 二元 | var1 = var2 != var3; | 如果var2不等于var3,var1的值就是true,否则为false |
< | 二元 | var1 = var2 < var3; | 如果var2小于var3,var1的值就是true,否则为false |
> | 二元 | var1 = var2 > var3; | 如果var2大于var3,var1的值就是true,否则为false |
<= | 二元 | var1 = var2 <= var3; | 如果var2小于或等于var3,var1的值就是true,否则为false |
>= | 二元 | var1 = var2 >= var3; | 如果var2大于或等于var3,var1的值就是true,否则为false |
表中var1都是bool类型的变量,var2和var3则可以使不同类型。
& 和 | 运算符也有两个类似的运算符,称为条件布尔运算符:
运算符 | 类别 | 示例表达式 | 结果 |
---|---|---|---|
&& | 二元 | var1 = var2 && var3; | 如果var2和var3都是true,var1的值就是true,否则为false(逻辑与) |
|| | 二元 | var1 = var2 || var3; | 如果var2或var3是true(或两者都是),var1的值就是true,否则为false(逻辑或) |
这些运算符的结果与&和|完全相同,但是其性能更好。两者都是检查第一个操作数的值(var2),如果已经能判断结果,就不必处理第二个操作数(var3)。
布尔赋值运算中,当表达式使用赋值(=)和按位运算符(&、|、^)时,就使用所比较数值的二进制表示来计算结果,而不是使用整数、字符串或近似的值。
运算符 | 类别 | 示例表达式 | 结果 |
---|---|---|---|
&= | 二元 | var1 &= var2; | var1的值是var1 & var2的结果 |
|= | 二元 | var1 |= var2; | var1的值是var1 | var2的结果 |
^= | 二元 | var1 ^= var2; | var1的值是var1 ^ var2的结果 |
运算符优先级2.0
优先级 | 运算符 |
---|---|
优先级 高 ↓ 低 | ++,- -(用作前缀),(),+,-(一元),!,~ *,/,% +,- <<,>> <,>,<=,>= ==,!= & ^ | && || =,*=,/=,%=,+=,-=,<<=,>>=,&=,^=,|= ++,- -(用作后缀) |
注意:添加括号(指定计算的顺序)可以使表达式看起来更清晰。