VC#2005快速入门之使用布尔操作符2010-12-13布尔操作符(Boolean operator)是求值结果要么为true,要么为false的一种操作符。C#提供了几个非常有用的布尔操作符,其中最简单的是NOT(求反)操作符,它使用感叹号(!)来表示。!操作符求一个布尔值的反值。在上例中,假如变量areYouReady的值为true,那么表达式!areYouReady的求值结果就是false。理解相等和关系操作符两个更常用的布尔操作符是相等(==)和不等(!=)操作符。利用这两个二元操作符,可以判断一个值是否与相同类型的另一个值相等。表1展示了这些操作符是如何工作的,其中以一个名为age的int变量为例。表1 布尔操作符
操 作 符 | 含 义 | 示 例 | 结果(假定age = 42) |
== | 等于 | age == 100 | false |
!= | 不等于 | age != 0 | true |
与上述两个操作符密切相关的是关系操作符(relational operator)。利用这些操作符,可以判断一个值是否小于或大于同类型的另一个值。表2展示了如何使用这些操作符。表2 关系操作符
操 作 符 | 含 义 | 示 例 | 结果(假定age = 42) |
&< | 小于 | age &< 21 | false |
&<= | 小于或等于 | age &<= 18 | false |
> | 大于 | age > 16 | true |
>= | 大于或等于 | age >= 30 | true |
注意 不要混淆相等操作符(==)与赋值操作符(=)。像x==y这样的代码会比较x与y,如果两个值相同,就会返回true。相反,像x=y这样的代码会将y的值赋给x。理解条件逻辑操作符C#还提供了另外两个布尔操作符:逻辑AND(逻辑与)操作符,它使用&&来表示;以及逻辑OR(逻辑或)操作符,它使用||来表示。这两个操作符统称为条件逻辑操作符(conditional logical operator)。它们的作用是合并不同的布尔表达式,以构成一个更大的表达式。这两个二元操作符与相等及关系操作符的相似之处在于,它们的结果也是true或false。不同之处在于,它们操作的值(操作数)本身就必须是true或false。只有作为操作数的两个布尔表达式都为true的前提下,&&操作符的求值结果才为true。例如,只有在percent的值大于或等于零,而且percent的值小于或等于100的前提下,以下语句才会将true值赋给validPercentage:bool validPercentage;validPercentage = (percent >= 0) && (percent &<= 100);提示 新手常犯的一个错误是在合并两个测试的时候,只对percent变量命名一次,就像下面这样:percent >= 0 && &<= 100 // 这个语句不能编译使用圆括号有助于避免这种类型的错误,同时也有助于澄清表达式。例如,可以对比一下以下两个表达式:validPercentage = percent >= 0 && percent &<= 100validPercentage = (percent >= 0) && (percent &<= 100)