C# 中的表達(dá)式和運(yùn)算符,你知道幾個(gè)?
前言
今天和大家一起學(xué)習(xí)下C#中的表達(dá)式和運(yùn)算符,都是很基礎(chǔ)的知識(shí)點(diǎn)。
在日常的編碼過(guò)程中,對(duì)于表達(dá)式和運(yùn)算符我們每天都在使用。比如像下面的代碼
int age=27;
就是一種表達(dá)式。
運(yùn)算符是一個(gè)符號(hào),它表示返回單個(gè)結(jié)果的操作。操作數(shù)是指作為運(yùn)算符輸入的數(shù)據(jù)元素。一個(gè)運(yùn)算符會(huì)將操作數(shù)作為輸入,執(zhí)行某個(gè)操作,基于該操作返回一個(gè)值。
表達(dá)式是運(yùn)算符和操作數(shù)的字符串,可以作為操作數(shù)的結(jié)構(gòu)有字面量、常量、變量、方法調(diào)用、元素訪問(wèn)器、其他表達(dá)式等。其中表達(dá)式可以使用運(yùn)算符連接以創(chuàng)建其他表達(dá)式。
字面量是代碼中的數(shù)字或字符串,表示一個(gè)指定類型的明確的,固定的值。
int age=27;
age=28;
Console.WriteLine(age);
Console.WriteLine(90);
上面的具體數(shù)字和字符串就是所謂的字面量,比如90,27,28都是。這里需要注意,字面量必須在編譯時(shí)可知。
Bool有兩個(gè)字面量:true和false。引用類型變量字面量null表示變量沒(méi)有設(shè)置為內(nèi)存中的數(shù)據(jù)。
求值順序
表達(dá)式可以由許多嵌套的子表達(dá)式構(gòu)成,子表達(dá)式的求值順序可以使表達(dá)式的最終值發(fā)生差別。
- 優(yōu)先級(jí)
- 結(jié)合性
簡(jiǎn)單算術(shù)運(yùn)算符
簡(jiǎn)單算術(shù)運(yùn)算符執(zhí)行四則算術(shù)運(yùn)算,比如下面的這些是二元左結(jié)合運(yùn)算符。
- 加 +
- 減 -
- 乘 *
- 除 / 截取整數(shù)部分到最近的整數(shù)。
求余運(yùn)算符
求余運(yùn)算符(%)用第二個(gè)操作數(shù)除第一個(gè)操作數(shù),忽略掉商并返回余數(shù)。
int a=30%7;
關(guān)系比較運(yùn)算符和相等運(yùn)算符關(guān)系比較運(yùn)算符和相等運(yùn)算符是二元運(yùn)算符,比較它們的操作數(shù)并返回bool型值。
if(1!=2){
}
if(1<5){
}
帶有關(guān)系或相等運(yùn)算符的二元表達(dá)式返回bool類型的值。
對(duì)于大多數(shù)引用類型來(lái)說(shuō),比較它們的相等性時(shí),將只比較它們的引用。