Java基礎(chǔ)入門篇—Java運(yùn)算符
一、比較運(yùn)算符和邏輯運(yùn)算符用作條件判斷
1.比較運(yùn)算符用于判斷兩個(gè)數(shù)據(jù)大小,例如大于、等于、小于、不等于。比較的結(jié)果是一個(gè)布爾值(true和false)。
2.邏輯運(yùn)算符用于布爾型數(shù)據(jù)進(jìn)行操作,結(jié)果也是一個(gè)布爾值(true和false)。在邏輯上“&&(AND)”、“||(OR)”、“!(NOT)”。
3.當(dāng)使用邏輯運(yùn)算符,會(huì)出現(xiàn)一個(gè)“短路”現(xiàn)象,例如(1>2)&&(1<3)時(shí),如果能夠確定左邊表達(dá)式1>2運(yùn)行結(jié)果為false,則系統(tǒng)會(huì)默認(rèn)沒必要去執(zhí)行右邊的1<3的表達(dá)式。同理,在(1<2)||(1<3)時(shí),如果能夠確定左邊表達(dá)式1<2運(yùn)行結(jié)果為true,則系統(tǒng)默認(rèn)沒有必要去執(zhí)行右邊1<3的表達(dá)式。
4.比較運(yùn)算符和邏輯運(yùn)算符具體示例如下所示:
運(yùn)行結(jié)果:
這個(gè)結(jié)果是怎么得出的呢?
首先看定義了3個(gè)int類型的變量i=3,j=2,k=4。然后看第一條輸出語句i>j表達(dá)式相當(dāng)于3>2的結(jié)果為true,因?yàn)槭莬|只要滿足左邊表達(dá)式或右邊表達(dá)式其中一個(gè)就可以,結(jié)果為true。第二條輸出語句是i=3,因?yàn)槎xint類型的變量i=3。第三條輸出語句i<j表達(dá)式相當(dāng)于3<2是不成立的結(jié)果為false,因?yàn)槭牵倏从疫叺谋磉_(dá)式++i>=4,i自增后的值為4,所以表達(dá)式結(jié)果為true。
二、三目運(yùn)算符
1.三目運(yùn)算符:用來完成簡(jiǎn)單的選擇邏輯,也就是根據(jù)條件判斷,從兩個(gè)選擇中選擇一種執(zhí)行。
2.三目運(yùn)算符的格式
3.三目運(yùn)算符的運(yùn)算規(guī)則
首先是判斷條件表達(dá)式,結(jié)果是一個(gè)布爾值。如果結(jié)果為true,運(yùn)算結(jié)果為表達(dá)式1,反之,如果結(jié)果為false,運(yùn)算結(jié)果為表達(dá)式2。4.例如求兩個(gè)數(shù)x、y中的最大值,如果用if...else來實(shí)現(xiàn)具體代碼如下所示:
輸出結(jié)果為x、y中的最大值為2。我們可以用三目運(yùn)算符代替這些代碼,更加方便。
三、原碼、反碼、補(bǔ)碼
原碼:在java中數(shù)值的絕對(duì)值的二進(jìn)制數(shù),對(duì)于整數(shù)而言,該最高位的0表示正數(shù),最高位的1表示負(fù)數(shù)。
用簡(jiǎn)單一個(gè)案例int a1=5,a2=-5:
5的原碼:00000000 00000000 00000000 00000101
-5的原碼:10000000 00000000 00000000 00000101
從上面這個(gè)案例,對(duì)于原碼而言,絕對(duì)值相等的正數(shù)和負(fù)數(shù)只是符號(hào)位不同,原碼是整數(shù)在不進(jìn)行操作,是以二進(jìn)制形式顯示。
反碼:反碼正數(shù)它的反碼就是它的原碼,也就是說正數(shù)反碼和原碼相同。例如:
5的原碼:00000000 00000000 00000000 00000101
5的反碼:00000000 00000000 00000000 00000101
對(duì)于負(fù)數(shù),負(fù)數(shù)的反碼在原碼基礎(chǔ)上,它的符號(hào)位是不變的,數(shù)值是取反例如:
5的原碼:00000000 00000000 00000000 00000101
-5的原碼: 10000000 00000000 00000000 00000101
-5的反碼:11111111 11111111 11111111 11111010
補(bǔ)碼:對(duì)正數(shù)來說,正數(shù)的補(bǔ)碼是它的原碼,對(duì)負(fù)數(shù)來說,負(fù)數(shù)的補(bǔ)碼在它這個(gè)負(fù)數(shù)的反碼基礎(chǔ)上進(jìn)行加1
例如:
-5的反碼:11111111 11111111 11111111 11111010
-5的補(bǔ)碼:11111111 11111111 11111111 11111011
四、運(yùn)算符的優(yōu)先級(jí)
運(yùn)算符的優(yōu)先級(jí)數(shù)值越小,優(yōu)先級(jí)越高。
例如:
輸出的結(jié)果是12,首先這個(gè)優(yōu)*先級(jí)要高于+,先算3 *a得到結(jié)果是9,然再和a相加,得到的結(jié)果是12。
輸出的結(jié)果是18,首先()優(yōu)先級(jí)是最高的,所以先算a+3得到結(jié)果6,然后再乘以3,最終的結(jié)果是18。
五、總結(jié)
本文主要介紹了比較運(yùn)算符和邏輯運(yùn)算符用作條件判斷,三目運(yùn)算符,原碼、反碼、補(bǔ)碼,運(yùn)算符的優(yōu)先級(jí),詳細(xì)的介紹邏輯運(yùn)算和比較算符一般是用作條件的判斷,通過簡(jiǎn)單的案例解釋邏輯運(yùn)算符的短路現(xiàn)象。
三目運(yùn)算符的用法,介紹了它的格式和規(guī)則,使大家能夠理解這個(gè)三目運(yùn)算符。原碼、反碼、補(bǔ)碼通過例子來解釋這三種使用。運(yùn)算符的優(yōu)先級(jí)數(shù)值越小,優(yōu)先級(jí)越高。通過這些的學(xué)習(xí),幫助大家能夠理解這些用法。