久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

C#中的操作符

 紫衣風(fēng)華 2015-04-26

C#的精彩世界還離不開其提供的豐富的操作符,,按照操作數(shù)的個(gè)數(shù),C#操作符可分為以下幾類:

  • 一元操作符 :++x,x++,--y,z--

  • 二元操作符:x+y,,x-y,,x*y

  • 三元操作符:x=(x>a?x:a);

如果從操作符的作用來看,C#操作符可以分為賦值操作符,,算術(shù)操作符,,關(guān)系操作符,邏輯操作符,,位操作符和其它操作符,。

1.賦值操作符

賦值操作符除基本的賦值操作符“=”之外還包括以下的組合賦值操作符:

  • +=    如:int x;  x+=5; 相當(dāng)于:x=x+5;
  • -=     如:int y,z=4; y-=z;  相當(dāng)于:y=y-z;
  • *=     如:double x,y = 2.3; x*=y;相當(dāng)于:x=x*y;
  • /=     如:  int x,y;int a=5; y=3;  x/=y+a;相當(dāng)于:x=x/(y+a);
  • %=   如: int y,x=12; y%=x; 相當(dāng)于:y=y%x;
  • >>=  如: int y=16; y>>=2;相當(dāng)于:y=y>>2;
  • <<=  如: int a=32; a<<=3;相當(dāng)于:a=a<<3;
  • ^=     如: int a=32;a^=2;  相當(dāng)于:a=a^2;

要注意的是,對(duì)于復(fù)合的賦值操作符,,中間不運(yùn)許有空格,,否則程序?qū)?huì)報(bào)錯(cuò),。

關(guān)于賦值操作符的運(yùn)用下面給出一個(gè)綜合的例子:

using System;

class ComOp
       {
                public static void Main()
                {
                       int x=5,y=13;
                       x -= y+3;
                       Console.WriteLine("x={0}",x);

                 double d1 = 10.5;
                        int d2=2;
                        d1*=d2+2;
                        Console.WriteLine("d1={0}",d1);

                  int a=16;
                         a>>=2;
                        Console.WriteLine("a={0}",a);
                 }
         }

運(yùn)行結(jié)果如下:

C中的操作符 - KingLong - 翔宇亭—KingLongs Blog

注意:符合賦值操作符右邊值的數(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
       {
                   static void Main()
                   {
                           int i;
                           i = 10/5;
                           Console.WriteLine("i=10/5={0}",i);
                           i = 13/5;
                           Console.WriteLine("i=13/5={0}",i);
                           i = 33/44;
                           Console.WriteLine("i=33/44={0}",i);

                    int a=13,b=11;
                          Console.WriteLine("a%b={0}",a%b);
                          double d1=12.3,d2=1.4;
                          Console.WriteLine("d1%d2={0}",d1%d2);
                  }
       }

運(yùn)算結(jié)果如下:

C中的操作符 - KingLong - 翔宇亭—KingLongs Blog

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
       {
             static void Main()
              {
                     int a=23,b=19;
                     bool b1=false,b2=true,b3=false;
                     double x=7E+3,y=0.0001;
                     char ch='x';
                    Console.WriteLine("a<b+4:{0}",a<b+4);
                    Console.WriteLine("(b1&&b3)!=b2:{0}",(b1&&b3)==b2);
                    Console.WriteLine("(b1&&b2)==b3:{0}",(b1&&b2)==b3);
                    Console.WriteLine("x<y*1000:{0}",x<y*1000);
                    Console.WriteLine("ch-32=='X'-'A'+65:{0}",ch-32=='X'-'A'+65);
              } 
       }

運(yùn)行結(jié)果如下:

C中的操作符 - KingLong - 翔宇亭—KingLongs Blog

4.邏輯操作符

邏輯操作符用于兩個(gè)布爾值之間,。C#提供了3種邏輯操作符:

&&   表示邏輯“與”的關(guān)系,,二元操作符;

||      表示邏輯“或”的關(guān)系,,二元操作符,;

!      表示邏輯“非”的關(guān)系,一元操作符,;

它們之間的運(yùn)算關(guān)系可以用真值表來表示,。假設(shè),x和y是兩個(gè)布爾值,,它們的初始值和運(yùn)算結(jié)果如下表:

 x

y

x&&y

x||y

!x 

 false

false

false

false

true

 flase

true

false

true

true

 true

 false

 false

 true

 fasle

 true

 true

 true

 true

 false

下面給出一個(gè)簡(jiǎn)單的例子,,測(cè)試一下邏輯操作符的使用方法:

 C中的操作符 - KingLong - 翔宇亭—KingLongs Blog

運(yùn)行結(jié)果如下:

C中的操作符 - KingLong - 翔宇亭—KingLongs Blog

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è)例子:

C中的操作符 - KingLong - 翔宇亭—KingLongs Blog

其運(yùn)算結(jié)果為:

C中的操作符 - KingLong - 翔宇亭—KingLongs Blog

我們也可以運(yùn)用三元操作符來實(shí)現(xiàn)求兩個(gè)值的大小:

C中的操作符 - KingLong - 翔宇亭—KingLongs Blog

其運(yùn)行結(jié)果為:

C中的操作符 - KingLong - 翔宇亭—KingLongs Blog

6.位操作符

我們知道,,任何信息在計(jì)算機(jī)中都是以二進(jìn)制的形式保存的,。位操作符就是對(duì)數(shù)據(jù)按二進(jìn)制進(jìn)行運(yùn)算的操作符。C#語言中的位操作符有:

  • &    與
  • |     或
  • ^    異或
  • ~   取補(bǔ)
  • <<  左移
  • >>  右移

其中,,取補(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
       0&1=0
       1&0=0
       1&1=1

即,,除了兩個(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
       0|1=1
       1|0=1
       1|1=1

即,除了兩個(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
       0^1=0
       1^0=0
       1^1=1

可以看出,,當(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
      {
             static void Main()
             {
                  int a = 3,b = 9;
                  Console.WriteLine("a={0},b={1}",a,b);

           Console.WriteLine("\n演示與操作符..."); 
                  Console.WriteLine("a&b={0}",a&b);
  
                  Console.WriteLine("\n演示或操作符...");  
                  Console.WriteLine("a|b={0}",a|b);
                  Console.WriteLine("-2|2={0}",-2|2);

           Console.WriteLine("\n演示異或操作符...");
                  Console.WriteLine("a^b={0}",a^b);

           Console.WriteLine("\n演示取補(bǔ)操作符...");
                  Console.WriteLine("~a={0},~b={1}",~a,~b);
                  Console.WriteLine("~16={0},~-16={1},~16u={2}",~16,~-16,~16u);

           Console.WriteLine("\n演示移位操作符...");
                  Console.WriteLine("a<<1={0},a<<2={1}",a<<1,a<<2);
                  Console.WriteLine("b>>1={0},b>>2={1}",b>>1,b>>2);
                  Console.WriteLine("a<<10={0},b>>10={1}",a<<10,b>>10);
                  Console.WriteLine("12u>>2={0}",12u>>2);

     }
       }

運(yùn)算結(jié)果如下

C中的操作符 - KingLong - 翔宇亭—KingLongs Blog

本文源于:翔宇亭IT樂園

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn),。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式,、誘導(dǎo)購買等信息,謹(jǐn)防詐騙,。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多