前面幾個章節簡述了 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】剩下兩種均可按照這種方式一樣運算的,當是操作數是別的時候,則按照位移運算。
