位置:首頁(yè) > 軟件操作教程 > 編程開(kāi)發(fā) > C# > 問(wèn)題詳情

C# 表達(dá)式 數(shù)學(xué)運(yùn)算符

提問(wèn)人:劉團(tuán)圓發(fā)布時(shí)間:2020-11-12

有5個(gè)簡(jiǎn)單的數(shù)學(xué)運(yùn)算符,其中兩個(gè)(+和_)有二元和一元兩種形式。表34列出了這些運(yùn)算符,并用一個(gè) 簡(jiǎn)短示例來(lái)說(shuō)明它們的用法,以及使用簡(jiǎn)單的數(shù)值類(lèi)型(整數(shù)和浮點(diǎn)數(shù))時(shí)它們的結(jié)果。

運(yùn)算符

類(lèi) 別

示例表達(dá)式

結(jié)果

+

二元

varl = var2 + var3;

varl的值是var2var3的和

-

二元

varl = var2 - var3;

varl的值是從var2減去var3所得的值

準(zhǔn)

二元

varl = var2 * var3;

varl的值是var2var3的乘積

/

二元

varl = var2 / var3;

varlvar2除以var3所得的值

%

二元

varl = var2 % var3;

varlvar2除以var3所得的余數(shù)

+

—元

varl = +var2;

varl的值等于var2的值

-

一元

varl = -var2;

varl的值等于var2的值乘以-1

注意:

+(—元■算符有點(diǎn)古怪,因?yàn)開(kāi)它對(duì)結(jié)果沒(méi)有影響.:它不會(huì)把值變成正的:..如果var2是-1,別+\?12仍是-1. 但這是一個(gè)得到普遍認(rèn)可的運(yùn)算符,^■以也把它包含進(jìn)來(lái)。這個(gè)運(yùn)算符最有用的方面是,可以定制它妁樣作, 本書(shū)在后面探討運(yùn)算符的舍載時(shí)會(huì)外為它。

上面的示例都使用簡(jiǎn)單的數(shù)值類(lèi)型,因?yàn)槭褂闷渌?jiǎn)單類(lèi)型,結(jié)果可能不太清晰。例如把兩個(gè)布爾值加在 —起,會(huì)得到什么結(jié)果?因此,如果對(duì)bool變量使用+(或其他數(shù)學(xué)運(yùn)算符),編譯器會(huì)報(bào)錯(cuò)。chai?變量的相加也 會(huì)有點(diǎn)讓人摸不著頭腦。記住,char變量實(shí)際上存儲(chǔ)的是數(shù)字,所以把兩個(gè)chai?變量加在一起也會(huì)得到一個(gè)數(shù) 字(其類(lèi)型為int)。這是一個(gè)隱式轉(zhuǎn)換示例,稍后將詳細(xì)介紹這個(gè)主題和顯式轉(zhuǎn)換,因?yàn)樗部梢詰?yīng)用到varl、 var2和var3是混合類(lèi)型的情況。

二元運(yùn)算符+在用于字符串類(lèi)型變量時(shí)也是有意義的。此時(shí),它的作用如表3-7所示。

運(yùn)算符

類(lèi) 別

示例表達(dá)式

結(jié) 果

+

二元

varl = var2 + var3;

varl的值是存儲(chǔ)在var2var3中的兩個(gè)字符串的連




接值

但其他數(shù)學(xué)運(yùn)算符不能用于處理字符串。

這里應(yīng)介紹的另兩個(gè)運(yùn)算符是遞増和遞減運(yùn)算符,它們都是一元運(yùn)算符,可通過(guò)兩種方式來(lái)使用它們:放 在操作數(shù)的前面或后面。簡(jiǎn)單表達(dá)式的結(jié)果如表3-8所示。

運(yùn)算符

類(lèi)

示例表達(dá)式

結(jié)果

++

一元

varl = -H-var2;

varl 的值是 var2 + 1,var2遞増 1

一元

varl = - -var2;

varl 的值是 var2 - 1,var2遞減 1

++

*

varl = var2++;

varl的值是var2,var2遞增1

一元

varl = var2——;

varl的值是var2,var2遞減1

這些運(yùn)算符會(huì)改變存儲(chǔ)在操作數(shù)中的值。

?++總是使操作數(shù)加1

?--總是使操作數(shù)減1

varl中存儲(chǔ)的結(jié)果有區(qū)別,其原因是運(yùn)算符的位置決定了它什么時(shí)候發(fā)揮作用。把運(yùn)算符放在操作數(shù)的前 面,則操作數(shù)是在進(jìn)行任何其他計(jì)算前受到運(yùn)算符的影響;而如果把運(yùn)算符放在操作數(shù)的后面,則操作數(shù)是在 完成表達(dá)式的計(jì)算后受到運(yùn)算符的影響。

再看一個(gè)示例??紤]以下代碼:

int varl, var2 = 5, var3 = 6; varl = var2++ * ——var3;

要把什么值賦予varl?在計(jì)算表達(dá)式前,var3前面的運(yùn)算符--會(huì)起作用,把它的值從6改為5??梢院雎?var2后面的++運(yùn)算符,因?yàn)樗窃谟?jì)算完成后才發(fā)揮作用,所以varl的結(jié)果是5與5的乘積,即25。 許多情況下,這些簡(jiǎn)單的一元運(yùn)算符使用起來(lái)非常方便,它們實(shí)際上是下述表達(dá)式的簡(jiǎn)寫(xiě)形式:

varl = varl +1;

這類(lèi)表達(dá)式有許多用途,特別適于在循環(huán)中使用。


繼續(xù)查找其他問(wèn)題的答案?

相關(guān)視頻回答
回復(fù)(0)
返回頂部