廖雪峰Java-Java程序基礎-運算規則
阿新 • • 發佈:2019-01-09
可能 void += 保留 http 變量 args sta oid
基於四則運算規則
除法結果為整數
除數為0時運行將報錯
++運算和--運算
簡寫的+=和-=
取余運算符%
public class Hello { public static void main(String[] args) { //整數元算的結果仍然是整數 int i = 99 / 9; System.out.println(i); int n = 100 / 9; System.out.println(n); // int z = 100 / 0; // System.out.println(z); //左移右移 int n1 = 5; int n2 = n1 << 10;//左移10位,在後面加10個0 int n3 = n2 >> 11;//右移11位,去掉11個0 int n4 = n1 << 29;//最高位是符號,1表示符號,0表示整數 int n5 = n4 >> 29;//保留符號位右移 int n6 = n4 >>> 29;//無條件右移 System.out.println(n1); System.out.println(n2); System.out.println(n3); System.out.println(n4); System.out.println(n5); System.out.println(n6); /* 位運算 與運算& 2個都為1,結果為1 * 1 & 1 = 1, 1 & 0 = 0, 0 & 1 = 0,0 & 0 = 0 * 或運算| 有1個為1,結果為1 * 1 | 1 = 1, 1 | 0 = 0, 0 | 1 = 0,0 | 0 = 0 * 亦或運算^不相同結果為1 * 1 ^ 1 = 0, 1 ^ 0 = 1, 0 ^ 1 = 1,0 | 0 = 0 * 非運算~ * ~ 1 = 0, ~ 0 = 1 */ System.out.println(5 & 6); } }
類型自動提升與強制轉型
- 在運算過程中,計算結果為較大類型的整型
- 可以將結果強制轉型:(類型)變量或數值
- 強制轉型可能丟失精度
總結:
- 整數運算結果永遠精確
- 運算結果會自動提升
- 可以強制轉型,但可能丟失精度
- 選擇合適範圍的整型(int, long)
廖雪峰Java-Java程序基礎-運算規則