50. Pow(x, n)
阿新 • • 發佈:2020-08-14
運算子
-
算術運算子:+ - * / % ++ --
-
賦值運算子:=
-
關係運算符:> < >= <= == != instanceof
-
邏輯運算子:&& || !
-
位運算子:& | ^ ~ >> << >>>
-
條件運算子:?:
-
拓展賦值運算子:+= -= *= /=
二元運算子
publicstaticvoidmain(String[]args) {
//二元運算子
inta=10;
intb=20;
System.out.println(a+b);
System.out.println(a-b);
System.out.println(a*b);
System.out.println(a/(double)b);
}
運算拓展
-
如果多個數運算時,裡面有Long,那麼結果型別為Long型別,否則全為Int型別。
-
如果多個數運算時,裡面有double,那麼結果型別為double型別,否則全為float型別。
publicstaticvoidmain(String[]args) {
// 如果多個數運算時,裡面有Long,那麼結果型別為Long型別,否則全為Int型別。
longa=134348837L;
intb=13634;
shortc=17;
byted=2;
System.out.println(a+b+c+d);//Long
System.out.println(c+d);//Int
// 如果多個數運算時,裡面有double,那麼結果型別為double型別,否則全為float型別。
floatf=12.8f;
doublee=1248.87;
System.out.println(f+e);//double
System.out.println(f+f);//float
}
關係運算符
publicstaticvoidmain(String[]args) {
// 關係運算符:正確or錯誤
inta=10;
intb=20;
System.out.println(a>b);
System.out.println(a<b);
System.out.println(a==b);
System.out.println(a!=b);
}
publicstaticvoidmain(String[]args) {
// 自增
inta=3;
intb=a++;// 先賦值操作,再自加操作
intc=++a;// 先自加操作,再賦值操作
System.out.println(a);
System.out.println(b);
System.out.println(c);
// 自減
intd=3;
inte=d--;// 先賦值操作,再自減操作
intf=--d;// 先自減操作,再賦值操作
System.out.println(d);
System.out.println(e);
System.out.println(f);
}
publicstaticvoidmain(String[]args) {
// 冪運算 2^3=2*2*2=8
doublem=Math.pow(2,3);
System.out.println(m);
}
publicstaticvoidmain(String[]args) {
// 與(&&) 或(||) 非(!)
booleana=true;
booleanb=false;
System.out.println("a&&b: "+(a&&b));//邏輯與運算:兩個變數都為真,結果才為真
System.out.println("a||b: "+(a||b));//邏輯或運算:兩個變數都為假,結果才為假
System.out.println("!(a&&b): "+!(a&&b));//邏輯非運算:如果為真,則為假;如果為假,則為真。
// 短路運算
// 邏輯與運算:如果第一個變數為假,則不必繼續運算,直接輸出結果為假。
// 邏輯或運算:如果第一個變數為真,則不必繼續運算,直接輸出結果為真。
}
位運算
A=00111100
B=00001101
A&B=00001100
A|B=00111101
A^B=00110001
~B=11110010
//面試題
計算2*8=16
轉化為2*2*2*2=16
運算規則:<<*2(左移乘2)
>>/2(右移除2)
000000000
000000011
000000102*
000000113
000001004*
000010008*
0001000016*
故運算結果為:2<<3=16(2向左移動3位得到16)
字串連線符
publicstaticvoidmain(String[]args) {
inta=10;
intb=20;
a+=b;//a = a + b
a-=b;//a = a - b
System.out.println(a);
//面試題
//字串連線符(先到先得原理)
System.out.println(""+a+b);//字串連線符在前面則結果為字串相連
System.out.println(a+b+"");//字串連線符在後面則進行前面的運算
列印結果:1020
30
}