1. 程式人生 > 其它 >Java基礎---持續學習中...

Java基礎---持續學習中...

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);   //返回-及格