Java運算子的常見問題與用法小結
本文例項講述了Java運算子的常見問題與用法。分享給大家供大家參考,具體如下:
算術運算子:
算術運算子的注意問題
1. 如果對負數取模,可以把模數負號忽略不記,如:5%-2=1。但被模數是負數就另當別論。
-5%3=-2;-5%-3=-2;符號跟被模數(左邊)。
2. 對於除號“/”,它的整數除和小數除是有區別的:整數之間做除法時,只保留整數部分而捨棄小數部分。
例如:int x=3510;x=x/1000*1000; x的結果是? 3000
而3560.0/1000*1000=3560.0
3. “+”除字串相加功能外,還能把非字串轉換成字串 ,
例如:System.out.println("5+5="+5+5);//列印結果是?5+5=10
int a = 3; a+=5;幾乎等同運算a=a+5;但+=隱含自動轉換
比較運算子/關係運算符:
邏輯運算子:
· 邏輯運算子用於連線布林型表示式,在Java中不可以寫成3<x<6,應該寫成x>3 & x<6 。
· “&”和“&&”的區別(不短路跟短路的區別):
單&時,左邊無論真假,右邊都進行運算;
雙&時,如果左邊為真,右邊參與運算,如果左邊為假,那麼右邊不參與運算。
“|”和“||”的區別同理,雙或時,左邊為真,右邊不參與運算。
有些時候這個會導致計算不同:
3. 異或( ^ )與或( | )的不同之處是:異或左右都為true時,結果為false(true^true==false)。
位運算子:
位運算是直接對二進位制進行運算。(補碼)
對於<< 和>>,移n位,就是對原數值乘以(<<)或者除以(>>)2的n次冪。
· 不要迷糊--負數右移,原符號位上的數也右移!(如果原本該數為負數,按照原理,右移則看最高位補空缺,保證了此時的原數值的符號不變)
特殊使用技巧:
一個數X對同一個數異或兩次,所得結果為X:6^3^3=6,3^6^3=6
練習:
11.最有效率的方式算出2乘以8等於幾?2<<3?
2.對兩個整數變數的值進行互換
·
·
·
&運算可用於獲取二進位制的有效位
異或
位運算子可以操作字元,但結果為int
三元運算子:
· 格式:
(條件表示式)?表示式1:表示式2; 括號有時可沒有,但為了格式化,寫了好。
如果條件為true,運算後的結果是表示式1;
如果條件為false,運算後的結果是表示式2;
· 示例:
獲取兩個數中大數。
int x=3,y=4,z;
z = (x>y)?x:y;//z變數儲存的就是兩個數的大數。
運算子優先順序:
更多java相關內容感興趣的讀者可檢視本站專題:《Java面向物件程式設計入門與進階教程》、《Java資料結構與演算法教程》、《Java操作DOM節點技巧總結》、《Java檔案與目錄操作技巧彙總》和《Java快取操作技巧彙總》
希望本文所述對大家java程式設計有所幫助。