正经学C#_布尔运算[布尔值与其布尔运算符]:《c#入门经典》
前面几个章节简述了 C#中得常用得算术运算符。这一章节说布尔值与其布尔运算符。
布尔值在c#中表示方式是 bool类型,这个类型可以储存两个值,true或者false,或者真或者假,可以说0或者1.
布尔运算在c#中主要用到的地方是,比较。 所以我们先说一下布尔比较运算符,也成关系运算符,后者名称较为常用。如图所示
假设变量 A 的值为 10,变量 B 的值为 20,则:
运算符 | 类别 | 描述 | 实例 |
---|---|---|---|
== | 二元 | 检查两个操作数的值是否相等,如果相等则条件为真。 | (A == B) 不为真。 |
!= | 二元 | 检查两个操作数的值是否相等,如果不相等则条件为真。 | (A != B) 为真。 |
> | 二元 | 检查左操作数的值是否大于右操作数的值,如果是则条件为真。 | (A > B) 不为真。 |
< | 二元 | 检查左操作数的值是否小于右操作数的值,如果是则条件为真。 | (A < B) 为真。 |
>= | 二元 | 检查左操作数的值是否大于或等于右操作数的值,如果是则条件为真。 | (A >= B) 不为真。 |
<= | 二元 | 检查左操作数的值是否小于或等于右操作数的值,如果是则条件为真。 | (A <= B) 为真。 |
处理常用得布尔运算时候,除了关系运算符,也会用上逻辑运算。下表
逻辑运算符
下表显示了 C# 支持的所有逻辑运算符。假设变量 A 为布尔值 true,变量 B 为布尔值 false,则:
运算符 | 类别 | 描述 | 实例 |
---|---|---|---|
& | 二元 | 称为逻辑与运算符。如果两个操作数都非零,则条件为真。 | (A &B) 为假。 |
| | 二元 | 称为逻辑或运算符。如果两个操作数中有任意一个非零,则条件为真。 | (A |B) 为真。 |
! | 一元 | 称为逻辑非运算符。用来逆转操作数的逻辑状态。如果条件为真则逻辑非运算符将使其为假。 | !(A & B) 为真。 |
^ | 二元 | 称为逻辑异或。两个操作数任意一个非零或者为假,则条件为真 | A^B 为真 |
&& | 二元 | 称为逻辑与运算符。如果两个操作数都非零,则条件为真。 | (A && B) 为假。 |
|| | 二元 | 称为逻辑或运算符。如果两个操作数中有任意一个非零,则条件为真。 | (A || B) 为真。 |
表中,&和&&,|和||得结果是一样得,名字都是一样得,但是确实单独列出来的,至于有什么不同,就是后者比前者的效果要好,&&得效果就要比&得效果要好
下面这个列表得运算方式有两种,一种是操作数是布尔值时,另外一种是位移运算。先说布尔值时运算 A=true B=false
运算符 | 描述 | 实例 |
---|---|---|
&= | A&=B 相当于 A=A&B | A=Fasle |
^= | A^=B 相当于 A=A^B | A=True |
|= | A|=B 相当于 A=A|B | A=True |
至于怎么理解是这样的,A&=B,相当于A=A&B,是这样解释得,当操作数是布尔值时,按照逻辑与的方式运算,并返回运算的值【布尔值的运算只有两种,True或者False】剩下两种均可按照这种方式一样运算的,当是操作数是别的时候,则按照位移运算。