1、運算符:
1)Java語言中,常用的運算符包括:+,-,*,/,這些就不用說了,大家肯定很熟悉了。
2)冪:Java沒有乘冪運算符,必須使用Math.pow(x,a)方法,表示x的a次冪。pow方法的兩個參數都屬於double類型,返回的值也是double類型。
例如:
double a = Math.pow(10,3); //定義了一個變量a,它的值是10的3次冪。
3)遞增、遞減運算符:
a++,a-- 先使用變量的值,然後再遞增或遞減。
++a,--a 先遞增或遞減然後再使用變量的值。
4)關系和布爾運算符:
關系運算符:==,!=,<,>,<=,>=
布爾運算符:&&(與), ||(或), !(否)
5)按位運算符:
&(加),|(或),^(異或),~(否),>>向右移位,<<(向左移位),> >>(用零來填充位於頂部的位)
注意Java沒有<<<運算符。
6)括號和運算符分級:
在Java中各種運算符默認的計算順序是:
[],()(方法調用) 從左到右
! ~ ++ -- +(一元) -(一元) () (造型) new 從右到左
+ / % 從左到右
+ - 從左到右
<< >> > >> 從左到右
< <= >= > instanceof 從左到右
== != 從左到右
& 從左到右
^ 從左到右
| 從左到右
&& 從左到右
|| 從左到右
?: 從左到右
= += -= *= /= &= |= ^= <<= >>= . >>= 從右到左
在Java中可以使用括號來指定自己希望的計算順序,從而改變運算符默認的運算順序。
2、數值類型的互相轉換:
當不同數據類型的數據參加運算的時候,會涉及到不同的數據類型的轉換問題:
Java語言數據類型的轉換基本上按照下面的規則進行:
如果其中一個運算對象是double類型的,另一個也會被轉換成double類型。
否則,如果其中一個運算對象是float類型的,另一個也會被轉換成float類型的。
否則,如果其中一個運算對象是long類型的,另一個也會被轉換成long類型的。
否則,如果其中一個運算對象是int類型的,另一個也會被轉換成int類型的。
否則,如果其中一個運算對象是short類型的,另一個也會被轉換成short類型的。
類型轉換還可以通過“造型”來實現,語法很簡單,將目標類型放在括號裡,然後在後面跟上一個變量名就可以了。
例如:
double x = 9.99;
int nx=(int)x; //這時nx就是一個int類型的數據了,並且它的值是9,後面的部分在造型過程中被丟掉了。如果想把一個浮點數舌入成“最接近”的整數,可以使用Math.round方法。在使用Math.round方法舌入後,可能還要使用造型來進行類型轉換。
Java還允許將一種類型的變量值賦給另一個變量,同時不進行顯示造型,同樣可以進行某些特定的賦值轉換,允許的轉換包括:
buty->short->int_>long->float->double char->int
當進行賦值的時候,會按照上面的順序從左向右轉換。