C#的精彩世界還離不開其提供的豐富的操作符,,按照操作數(shù)的個(gè)數(shù),C#操作符可分為以下幾類:
如果從操作符的作用來看,C#操作符可以分為賦值操作符,,算術(shù)操作符,,關(guān)系操作符,邏輯操作符,,位操作符和其它操作符,。 1.賦值操作符 賦值操作符除基本的賦值操作符“=”之外還包括以下的組合賦值操作符:
要注意的是,對(duì)于復(fù)合的賦值操作符,,中間不運(yùn)許有空格,,否則程序?qū)?huì)報(bào)錯(cuò),。 關(guān)于賦值操作符的運(yùn)用下面給出一個(gè)綜合的例子: using System; class ComOp double d1 = 10.5; int a=16; 運(yùn)行結(jié)果如下: 注意:符合賦值操作符右邊值的數(shù)據(jù)類型必須與左邊值得數(shù)據(jù)類型相同或能夠進(jìn)行隱式轉(zhuǎn)換,否則會(huì)出錯(cuò),。 2.算術(shù)操作符 C#為我們提供了5種算術(shù)操作符:
對(duì)于+,,-,*,,/,,大家都不陌生,下面只說一說求余操作符%,。 在C#中,,%不僅可以對(duì)于整數(shù)求余數(shù),對(duì)小數(shù)同樣可以求余數(shù),。如 5%3=2,,3.2%2=1.2,5%1.5=0.5,。 下面給出一個(gè)綜合例子來說一下算術(shù)操作符的用法: using System; class AriOp int a=13,b=11; 運(yùn)算結(jié)果如下: 3.關(guān)系操作符 關(guān)系操作符,,即比較操作符,是用于比較兩個(gè)值大小或相等的,。其結(jié)果應(yīng)該是一個(gè)邏輯值“真”或“假”,。C#中的的關(guān)系操作符主要有以下幾種:
在書寫組合操作符時(shí)要注意,兩個(gè)字符之間不允許有空格,,否則系統(tǒng)無法識(shí)別,,而出錯(cuò)。 對(duì)于布爾類型,、引用類型和字符串類型,,只能使用==和!=兩個(gè)關(guān)系操作符,即無大小之分,,只有是否相等和不相等之分。下面舉一個(gè)例子說明其用法: using System; class ComOp 運(yùn)行結(jié)果如下: 4.邏輯操作符 邏輯操作符用于兩個(gè)布爾值之間,。C#提供了3種邏輯操作符: && 表示邏輯“與”的關(guān)系,,二元操作符; || 表示邏輯“或”的關(guān)系,,二元操作符,; ! 表示邏輯“非”的關(guān)系,一元操作符,; 它們之間的運(yùn)算關(guān)系可以用真值表來表示,。假設(shè),x和y是兩個(gè)布爾值,,它們的初始值和運(yùn)算結(jié)果如下表:
下面給出一個(gè)簡(jiǎn)單的例子,,測(cè)試一下邏輯操作符的使用方法: 運(yùn)行結(jié)果如下: 5.條件操作符 C#中唯一的一個(gè)三元操作符為:?:,,即條件操作符。他要求每一個(gè)操作數(shù)都必須是一個(gè)可以隱式轉(zhuǎn)換成bool類型的表達(dá)式,,其運(yùn)用形式如下: 表帶式1?表達(dá)式2:表達(dá)式3; 其先運(yùn)算表達(dá)式1,,如果表達(dá)式1的值為true,則計(jì)算表達(dá)式2,,運(yùn)算結(jié)果為表達(dá)式2的值,;若表達(dá)式1的值為false,則運(yùn)算表達(dá)式3,,運(yùn)算結(jié)果為表達(dá)式3的值,。 下面給出一個(gè)例子: 其運(yùn)算結(jié)果為: 我們也可以運(yùn)用三元操作符來實(shí)現(xiàn)求兩個(gè)值的大小: 其運(yùn)行結(jié)果為: 6.位操作符 我們知道,,任何信息在計(jì)算機(jī)中都是以二進(jìn)制的形式保存的,。位操作符就是對(duì)數(shù)據(jù)按二進(jìn)制進(jìn)行運(yùn)算的操作符。C#語言中的位操作符有:
其中,,取補(bǔ)只有一個(gè)操作數(shù),,而其它的位操作符都有兩個(gè)操作數(shù)。這些運(yùn)算都不會(huì)產(chǎn)生溢出,。位操作符的操作數(shù)為整型或者是可以轉(zhuǎn)換為整型的任何其它類型,。 (1)& 與操作符 &操作符的操作數(shù)按二進(jìn)制進(jìn)行與運(yùn)算,其規(guī)則為: 0&0=0 即,,除了兩個(gè)位均為1時(shí),,與運(yùn)算結(jié)果為1外,其它任何情況下與運(yùn)算結(jié)果均為0,。比如,,3和9進(jìn)行與運(yùn)算: 3的二進(jìn)制表示: 00000011 9的二進(jìn)制表示: 00001001 與運(yùn)算結(jié)果: 00000001 即,3&9的結(jié)果為1,。 (2)| 或操作符 或操作符的操作數(shù)按二進(jìn)制位進(jìn)行或運(yùn)算,,其規(guī)則為: 0|0=0 即,除了兩個(gè)位均為0時(shí),,或運(yùn)算結(jié)果為0外,,其它情況下或運(yùn)算結(jié)果均為1。比如,,3和9進(jìn)行或運(yùn)算: 3的二進(jìn)制表示: 00000011 9的二進(jìn)制表示: 00001001 或運(yùn)算結(jié)果: 00001011 即,,3|9的結(jié)果為11。 (3)^ 異或操作符 異或操作符的操作數(shù)按二進(jìn)制位進(jìn)行異或運(yùn)算,,其運(yùn)算規(guī)則為: 0^0=0 可以看出,,當(dāng)兩個(gè)位相同時(shí),異或運(yùn)算結(jié)果為0,;不相同時(shí)異或運(yùn)算結(jié)果為1,。如3和9進(jìn)行異或運(yùn)算: 3的二進(jìn)制表示: 00000011 9的二進(jìn)制表示: 00001001 異或運(yùn)算結(jié)果: 00001010 即,,3^9的結(jié)果為10。 (4)~ 取補(bǔ)操作符 取補(bǔ)操作符對(duì)操作數(shù)的每一位取補(bǔ),,如對(duì)9取補(bǔ)結(jié)果為: 9的二進(jìn)制表示:00001001 取補(bǔ)運(yùn)算結(jié)果: 11110110 (5)移位操作符 左移操作將操作數(shù)按位左移,,高位被丟棄,低位順序補(bǔ)0,。比如12的二進(jìn)制為00001100,,左移一位為00011000(24),左移二位為00110000(48),。 右移操作時(shí),,如果操作數(shù)x是int或long類型時(shí),x的低位被丟棄,,其它各位順序依次右移,,如果x是非負(fù)數(shù),最高位設(shè)為零,;如果x為負(fù)數(shù),,則最高位設(shè)為1。而當(dāng)x為uint或ulong類型時(shí),,x的低位將被丟棄,,其它各位順序依次右移,高位設(shè)為0,。 下面簡(jiǎn)單舉個(gè)例子來說明以上各位操作符的用法: using System; class Bit Console.WriteLine("\n演示與操作符..."); Console.WriteLine("\n演示異或操作符..."); Console.WriteLine("\n演示取補(bǔ)操作符..."); Console.WriteLine("\n演示移位操作符..."); } 運(yùn)算結(jié)果如下 本文源于:翔宇亭IT樂園 |
|