正经学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&BA=Fasle
^=A^=B 相当于 A=A^BA=True
|=A|=B 相当于 A=A|BA=True

至于怎么理解是这样的,A&=B,相当于A=A&B,是这样解释得,当操作数是布尔值时,按照逻辑与的方式运算,并返回运算的值【布尔值的运算只有两种,True或者False】剩下两种均可按照这种方式一样运算的,当是操作数是别的时候,则按照位移运算。