不論什麼版本
我相信修改核心的朋友,一定會遇到這些東西,分享給一些剛接觸核心的朋友參考。
※算術運算子
我相信修改核心的朋友,一定會遇到這些東西,分享給一些剛接觸核心的朋友參考。
※算術運算子
符號
|
說明
|
使用範例
|
+
|
加法運算
|
x+y;
|
-
|
減法運算,或是負號
|
x-y; -x
|
*
|
乘法運算
|
x*y
|
/
|
除法運算
|
x/y
|
%
|
餘數運算
|
x%y
|
++
|
遞增運算
|
x++; 等同x=x+1
|
--
|
遞減運算
|
x--; 等同 x=x-1
|
<<
|
算數位元左平移
| |
>>
|
算數位元右平移,保留sign
| |
>>>
|
邏輯位元右平移,unsign
|
◎指定運算子
符號
|
說明
|
使用範例
|
=
|
將右邊的運算結果,指定給左邊的變數
|
x = 10;
|
+=
|
將左邊變數的值加上右邊的值,再指定給左邊的變數
|
x += 1; 等同x = x + 1
|
-=
|
將左邊變數的值減去右邊的值,再指定給左邊的變數
|
x -= 1; 等同x = x - 1
|
*=
|
將左邊變數的值乘以右邊的值,再指定給左邊的變數
|
x *= 2; 等同x = x * 2
|
/=
|
將左邊變數的值除以右邊的值,再指定給左邊的變數
|
x /= 2; 等同x = x * 2
|
%=
|
將左邊變數的值除以右邊的值,再指定餘數給左邊的變數
|
x %= 2; 等同x = x % 2
|
&=
|
將左邊變數的值和右邊的值相連,再指定給左邊的變數
|
x &= y; 等同x = x & y
|
^=
|
位元互斥指定運算
|
x ^= y; 等同x = x ^ y
|
<<=
|
算數位元左平移
|
x <<= 2; 等同x = x << 2
|
>>=
|
算數位元右平移
|
x >>= 2; 等同x = x >> 2
|
◎關係運算子
符號
|
說明
|
使用範例
|
==
|
等於
|
x == 10;
|
!=
|
不等於
|
x != 10;
|
<
|
小於
|
x < 10;
|
<=
|
小於或等於
|
x <= 10;
|
>
|
大於
|
x > 10;
|
>=
|
大於或等於
|
x >= 10;
|
>>=
|
算數位元右平移
|
x >>= 10; 等同x = x >> 2
|
◎邏輯運算子
符號
|
說明
|
使用範例
|
&
|
且(AND)運算
|
x & y;
|
|
|
或(OR)運算
|
x | y;
|
!
|
否(NOT)運算
|
!x;
|
^
|
XOR運算
|
x ^ y;
|
&&
|
短路(Short-circuit)且運算
|
x && y;
|
||
|
短路(Short-circuit)或運算
|
x || y;
|
?
|
if-then-else三元運算
|
a>10 ? x : y;
|
「?」三元運算子
Java程式包含了一個特殊的三元運算子「?」,某種程度上,它可以取代「if-then-else」敘述,是一種較有效率的寫作方式。
◎位元邏輯運算子
當「&」、「|」、「^」、「~」單獨使用於數值時,它們可以是位元邏輯運算子。位元邏輯運算子會對運算元的每一個位元單獨作運算。參考下表:
A
|
B
|
0A | B
|
A & B
|
A ^ B
|
~A
|
0
|
0
|
0
|
0
|
0
|
1
|
1
|
0
|
1
|
0
|
1
|
0
|
0
|
1
|
1
|
0
|
1
|
1
|
1
|
1
|
1
|
1
|
0
|
0
|
沒有留言:
張貼留言