Java基礎---持續學習中...
阿新 • • 發佈:2022-01-06
Java基礎
Java執行機制
源程式--->Java編譯器---->位元組碼(java.class檔案)--->類裝載器--->
位元組碼校驗器--->直譯器--->作業系統平臺
注意:
編譯是一次性的,可以生成目標檔案,而解釋是一句一句的
資料型別拓展
浮點數--有誤差
small key-銀行業務怎麼表示--BigDecimal類-數學工具類-!!!
最好不用浮點數,有誤差(以下即大離譜事件)
float d1 = 23342790796f;
float d2 = d1 + 1;
System.out.println(d1==d2); //true;d1居然=d2!!!
字元拓展
所有字元本質上還是數字,有一個Unicode編碼表,可以把這些轉換
char c1 = 'a';
System.out.println((int)c1); //強制轉換--97
char c2 = '中';
System.out.println((int)c2); //--2001.
char c3 = '\u0062';
System.out.println(c3); //--打印出b
運算子
位運算子
-
!!!效率極高 --- <<左移相當於*2 >>右移相當於/2
-
經典面試題---2*8=16,怎樣計算比較快?
System.out.println(2<<3); //2<<3結果為16;左移三位,三次乘二
字串連線符---“+”
System.out.println(""+a+b); //字串在前面,字串連線:1020
System.out.println(a+b+""); //字串在後面,先運算; 30
三元(偷懶)運算子
x ? y: z (如果x==true,結果為y,否則結果為z)
int score = 80;
String type = score <60 ?"不及格" : "及格";
System.out.println(type); //返回-及格