JAVA基礎(12)---運算子
Java中的運算子
算術運算子
+ 加 - 減 * 乘 / 取模 取的兩個數相除的商 % 求餘 獲得是餘數
++自增 c++ 先取值 後運算(執行+1操作) ++c先運算(執行+1操作) 後取值
--自減
邏輯運算子
& 邏輯與 && 短路與
與運算,如果有一個結果為false 那麼結果肯定為false
在邏輯與中,無論第一個結果是ture還是false 第二個都要進行比較
短路與:如果第一比較的結果是false,那麼第二個就不參與比較運算
如果第一個比較的結果是true 才會進行第二個比較運算
| 邏輯或 || 短路或
或運算,如果有一個結果為true 那麼結果肯定為true
在邏輯或中,無論第一個結果是ture還是false 第二個都要進行比較
短路或:如果第一比較的結果是true,那麼第二個就不參與比較運算
如果第一個比較的結果是false 才會進行第二個比較運算
^異或 :相同為0 不同為1
0000 0010
0000 0011
------------------
0000 0001
/*
比如 有兩個整數 a= 2; b= 3 交換a 和b的值
不使用中間變數 來交換兩個數的值
*/
public class OperatorDemo2{
public static void main(String[] args){
int a= 2;
int b = 3;
int temp;
temp = a;
a = b;
b = temp;
System.out.println(a+"----"+b);
System.out.println("---------------------------------");
int m = 4;
int n = 5;
m= m ^ n;
n = m ^ n;
m = m ^ n;
System.out.println(m+"----"+n);
System.out.println("---------------------------------");
int x = 6;
int y = 7;
x = x + y;
y = x - y;
x = x - y ;
System.out.println(x+"----"+y);
System.out.println("---------------------------------");
int k = 8;
int v = 9;
k = k * v;
v = k /v;
k = k /v;
System.out.println(k+"----"+v);
}
}
賦值運算子:
條件運算子(三元運算子/三目運算子)
格式:op1 ? op2:op3
op1是一個條件表示式,如果這個條件成立(true),那麼該運算的結果就為op2 否則為 op3
表示式:是符合一定語法規則的運算子和運算元的組合
表示式的型別和值
對錶達式中運算元進行運算得到的結果稱為表示式的值
表示式的值的資料型別即為表示式的型別
表示式的運算順序:應按照運算子的優先順序從高到低的順序進行,優先順序相同的運算子按照事先約定的結合方向進行
位運算
位運算是所有運算中最快速和最高效的運算方式
在位運算中,左移是乘,左移幾位就是對目標資料乘以2的幾次方
右移是除,右移幾位 就是對目標資料除以2的幾次方