這篇文章主要講解了如何使用Java運(yùn)算符,內(nèi)容清晰明了,對(duì)此有興趣的小伙伴可以學(xué)習(xí)一下,相信大家閱讀完之后會(huì)有幫助。
目前創(chuàng)新互聯(lián)公司已為上1000家的企業(yè)提供了網(wǎng)站建設(shè)、域名、網(wǎng)頁(yè)空間、網(wǎng)站托管運(yùn)營(yíng)、企業(yè)網(wǎng)站設(shè)計(jì)、臨湘網(wǎng)站維護(hù)等服務(wù),公司將堅(jiān)持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長(zhǎng),共同發(fā)展。
算術(shù)運(yùn)算符:
算術(shù)運(yùn)算符的注意問(wèn)題
1. 如果對(duì)負(fù)數(shù)取模,可以把模數(shù)負(fù)號(hào)忽略不記,如:5%-2=1。但被模數(shù)是負(fù)數(shù)就另當(dāng)別論。
-5%3=-2;-5%-3=-2;符號(hào)跟被模數(shù)(左邊)。
2. 對(duì)于除號(hào)“/”,它的整數(shù)除和小數(shù)除是有區(qū)別的:整數(shù)之間做除法時(shí),只保留整數(shù)部分而舍棄小數(shù)部分。
例如:int x=3510;x=x/1000*1000; x的結(jié)果是? 3000
而3560.0/1000*1000=3560.0
3. “+”除字符串相加功能外,還能把非字符串轉(zhuǎn)換成字符串 ,
例如:System.out.println("5+5="+5+5);//打印結(jié)果是?5+5=10
int a = 3; a+=5;幾乎等同運(yùn)算a=a+5;但+=隱含自動(dòng)轉(zhuǎn)換
· 邏輯運(yùn)算符用于連接布爾型表達(dá)式,在Java中不可以寫成3
· “&”和“&&”的區(qū)別(不短路跟短路的區(qū)別):
單&時(shí),左邊無(wú)論真假,右邊都進(jìn)行運(yùn)算;
雙&時(shí),如果左邊為真,右邊參與運(yùn)算,如果左邊為假,那么右邊不參與運(yùn)算。
“|”和“||”的區(qū)別同理,雙或時(shí),左邊為真,右邊不參與運(yùn)算。
有些時(shí)候這個(gè)會(huì)導(dǎo)致計(jì)算不同:
3. 異或( ^ )與或( | )的不同之處是:異或左右都為true時(shí),結(jié)果為false(true^true==false)。
位運(yùn)算是直接對(duì)二進(jìn)制進(jìn)行運(yùn)算。(補(bǔ)碼)
對(duì)于<< 和>>,移n位,就是對(duì)原數(shù)值乘以(<<)或者除以(>>)2的n次冪。
· 不要迷糊--負(fù)數(shù)右移,原符號(hào)位上的數(shù)也右移!(如果原本該數(shù)為負(fù)數(shù),按照原理,右移則看最高位補(bǔ)空缺,保證了此時(shí)的原數(shù)值的符號(hào)不變)
特殊使用技巧:
一個(gè)數(shù)X對(duì)同一個(gè)數(shù)異或兩次,所得結(jié)果為X:6^3^3=6,3^6^3=6
練習(xí):
11.最有效率的方式算出2乘以8等于幾?2<<3?
2.對(duì)兩個(gè)整數(shù)變量的值進(jìn)行互換
·
·
·
&運(yùn)算可用于獲取二進(jìn)制的有效位
異或
位運(yùn)算符可以操作字符,但結(jié)果為int
· 格式:
(條件表達(dá)式)?表達(dá)式1:表達(dá)式2; 括號(hào)有時(shí)可沒(méi)有,但為了格式化,寫了好。
如果條件為true,運(yùn)算后的結(jié)果是表達(dá)式1;
如果條件為false,運(yùn)算后的結(jié)果是表達(dá)式2;
· 示例:
獲取兩個(gè)數(shù)中大數(shù)。
int x=3,y=4,z;
z = (x>y)?x:y;//z變量存儲(chǔ)的就是兩個(gè)數(shù)的大數(shù)。
看完上述內(nèi)容,是不是對(duì)如何使用Java運(yùn)算符有進(jìn)一步的了解,如果還想學(xué)習(xí)更多內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。