1. 算術運算符
運算符 | 描述 | 示例 | 結果 |
---|---|---|---|
+ | 加 | y = 1;x = y + 1 | x = 2 |
- | 減 | y = 10;x = y - 5 | x = 5 |
* | 乘 | y = 2;x = y * 5 | x = 10 |
/ | 除 | y = 10;x = y / 5 | x = 2 |
% | 取餘 | y = 3; x = y % 2; | x = 1 |
++ | 自加 | y = 1;x = + + y | x = 2 |
- - | 自減 | y = 1;x = - - y | x = 0 |
2.邏輯運算符
運算符 | 描述 | 作用 |
---|---|---|
& | 按位與 | 同真則真,否則爲假(1&1=1;1&0、0&0、0&1均爲0) |
&& | 邏輯與 | 同真則真,否則爲假(1&1=1;1&0、0&0、0&1均爲0) |
| | 按位或 | 同假則假,否則爲真(0&0=0;1&0、0&0、0&1均爲1) |
|| | 邏輯或 | 同假則假,否則爲真(0&0=0;1&0、0&0、0&1均爲1) |
! | 非 | 真則假,假則真(取反) |
^ | 按位異或 | 相同爲假,不同爲真(即對立統一:1 ^ 1 = 0 ^ 0 = 0; 1 ^ 0 = 0 ^ 1 = 1) |
3. 位運算符(均基於二進制)
3.1 " << " 左移運算符
(1)一般表達式:m << n --> m*(2^n)
(2)示例:3 << 2 = 3* 2^2 = 12
3.2 " >> " 右移運算符
(1)一般表達式:m >> n = m / (2^n)
(2) 最左側填充:原始數據最高位是什麼,最高位就填充什麼。
由於計算機中數據爲補碼存儲,故數據的位移運算用補碼進行,3>>1的結果爲00000001可知爲正數,原碼、補碼、反碼均相同,則結果爲 1(00000001);-3>>1的補碼爲1111110,爲負數,補碼與原碼不同,求原碼時需對補碼減1再按位求反(除符號位外),最終結果爲-2(10000010)。
3.3 " >>> "無符號右移
(1)原則: 無論最高位是什麼,右移後最高位均補0
(2)示例:6>>>2
可知6>>>2 = 1(00000001)
3.4 " ~ " 反碼
(1)原則:按位取反
(2)示例:~3 = -4(10000100)
4 三元運算符——“ (判斷)?m:n ”
示例:m = 4 > 3 ? 50 : 60
此 時m=50;即若判斷爲真則取m的值,反之則取n的值。