教育行業(yè)A股IPO第一股(股票代碼 003032)

全國(guó)咨詢/投訴熱線:400-618-4000

Java中各種運(yùn)算符的優(yōu)先級(jí)順序是怎樣的?

更新時(shí)間:2023年11月06日11時(shí)23分 來(lái)源:傳智教育 瀏覽次數(shù):

好口碑IT培訓(xùn)

Java中,在對(duì)一些比較復(fù)雜的表達(dá)式進(jìn)行運(yùn)算時(shí),要明確表達(dá)式中所有運(yùn)算符參與運(yùn)算的先后順序,通常把這種順序稱(chēng)為運(yùn)算符的優(yōu)先級(jí)。Java中運(yùn)算符的優(yōu)先級(jí)如下所示,左側(cè)代表優(yōu)先級(jí),右側(cè)表示運(yùn)算符。

運(yùn)算符優(yōu)先級(jí)

在上述所示中,數(shù)字越小優(yōu)先級(jí)越高。根據(jù)上方的優(yōu)先級(jí)運(yùn)算符,分析下面代碼的運(yùn)行結(jié)果。

int a =2;
int b = a + 3*a;
System.out.println(b);

運(yùn)行結(jié)果為 8,由于運(yùn)算符*的優(yōu)先級(jí)高于運(yùn)算符十和=,因此先運(yùn)算 3*a,得到的結(jié)果是 6,再將6與a相加,最后通過(guò)運(yùn)算符=賦值給變量 b,得到最后的結(jié)果8。

int a =2;
int b = (a+3) * a;
System.out.println (b);

運(yùn)行結(jié)果為 10,由于運(yùn)算符()的優(yōu)先級(jí)最高,因此先運(yùn)算括號(hào)內(nèi)的 a+3,得到的結(jié)果是5,再將5與a相乘,最后通過(guò)運(yùn)算符一賦值給變量 b,得到最后的結(jié)果 10。

其實(shí)沒(méi)有必要去刻意記憶運(yùn)算符的優(yōu)先級(jí)。編寫(xiě)程序時(shí),盡量使用括號(hào)()來(lái)實(shí)現(xiàn)想要的運(yùn)算順序,以免產(chǎn)生歧義。

0 分享到:
和我們?cè)诰€交談!