VisualC#編程入門之表達(dá)式

字號(hào):

表達(dá)式(expression)由操作數(shù)(operand)和運(yùn)算符(operator)構(gòu)成。表達(dá)式的運(yùn)算符標(biāo)明在操作數(shù)上運(yùn)用了哪種操作。運(yùn)算符的例子包括+、-、*、/和new。操作數(shù)的例子包括字面值、字段、局部變量和表達(dá)式。
    當(dāng)表達(dá)式包括多個(gè)運(yùn)算符時(shí),運(yùn)算符的優(yōu)先級(jí)(precedence)控制各個(gè)運(yùn)算符執(zhí)行的順序。例如,表達(dá)式x+y*z將以x+(y*z)的形式計(jì)算,原因就是運(yùn)算符“*”的優(yōu)先級(jí)高于運(yùn)算符“+”。
    大多數(shù)運(yùn)算符能夠被重載(overload)。運(yùn)算符的重載允許用戶自定義運(yùn)算符實(shí)現(xiàn),用于為用戶自定義的類或者結(jié)構(gòu)類型指定操作方式。
    表1.4總結(jié)了C#的運(yùn)算符,運(yùn)算符的分類排列是按其優(yōu)先級(jí)從高到低的次序。同一分類的運(yùn)算符具有相同的優(yōu)先級(jí)。
     表1.4 C#的運(yùn)算符
    分 類
     表 達(dá) 式
     描 述
    基本
     x.m
     成員訪問(wèn)
    x(…)
     方法和委托調(diào)用
    x[…]
     數(shù)組和索引器訪問(wèn)
    x++
     后增量(post-increment)
    x--
     后減量(post-decrement)
    new T(…)
     對(duì)象和委托創(chuàng)建
    new T[…]
     數(shù)組創(chuàng)建
    typeof(T)
     獲得T類型的System.Type對(duì)象
    checked(x)
     在檢查的上下文計(jì)算表達(dá)式
    unchecked(x)
     在未檢查的上下文計(jì)算表達(dá)式
    一元
     +x
     表達(dá)式的值相同
    -x
     求相反數(shù)
    !x
     邏輯求反
    ~x
     按位求反
    ++x
     前增量(pre-increment)
    --x
     前減量(pre-decrement)
    (T)x
     顯式地將x的類型轉(zhuǎn)換為類型T
    乘除法
     x*y
     乘
    x/y
     除
    x%y
     求余
    加減
     x+y
     加,字符串合并,委托組合
    x-y
     減,委托移除
    移位
     x<     左移
    x>>y
     右移
    關(guān)系和類型檢測(cè)
     x     小于
    x>y
     大于
    x<=y
     小于或者等于
    x>=y
     大于或者等于
    x is T
     如果x屬于T類型,返回true;否則,返回false
    x as T
     返回轉(zhuǎn)換為類型T的x;如果x不是T,就返回null譯注2
    相等
     x==y
     等于
    x!=y
     不等于
    邏輯與
     x&y
     整型按位與,布爾型邏輯與
    邏輯異或
     x^y
     整型按位異或,布爾型邏輯異或
    邏輯或
     x|y
     整型按位或,布爾型邏輯或
    條件與
     x&&y
     如果x為true,則計(jì)算y
    條件或
     x||y
     如果x為false,則計(jì)算y
    條件
     x?y:z
     如果x為true,則計(jì)算y;如果x為false,則計(jì)算z
    賦值
     x=y
     賦值
    x op=y
     復(fù)合賦值;支持的運(yùn)算符有:
    *= /= %= += -= <<= >>= &= ^= |=