![]() ![]() |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
VC#2005快速入门之使用布尔操作符 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
作者:佚名 文章来源:不详 点击数 更新时间:2008/4/18 13:56:50 文章录入:杜斌 责任编辑:杜斌 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
理解相等和关系操作符 两个更常用的布尔操作符是相等(==)和不等(!=)操作符。利用这两个二元操作符,可以判断一个值是否与相同类型的另一个值相等。表1展示了这些操作符是如何工作的,其中以一个名为age的int变量为例。 表1 布尔操作符
与上述两个操作符密切相关的是关系操作符(relational operator)。利用这些操作符,可以判断一个值是否小于或大于同类型的另一个值。表2展示了如何使用这些操作符。 表2 关系操作符
注意 不要混淆相等操作符(==)与赋值操作符(=)。像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 &<= 100 validPercentage = (percent >= 0) && (percent &<= 100) 两个表达式返回的是同一个值,因为操作符&&的优先级低于>=和&<=。然而,第二个表达式采取更清晰易懂的方式表明了它的目的。 两个操作符任何一个为true,操作符||的求值结果都为true。使用操作符||,我们可以判断两个条件中是否有任何一个成立。如果percent的值小于零,或者percent的值大于100,以下语句会将值true赋给invalidPercentage: bool invalidPercentage; invalidPercentage = (percent &< 0) || (percent > 100);
操作符优先级和结合性总结 表3总结了迄今为止学过的所有操作符的优先级和结合性。相同类别的操作符具有相同的优先级。一个更高类别中的操作符优先于较低类别中的操作符。 表3 操作符小结
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
![]() ![]() |