1. 程式人生 > >JAVA 基礎知識入門

JAVA 基礎知識入門

整數的型別:

                   byte   8 bit
                  short  16 bit
                  int    32 bit
                  long   64 bit
注意:
  一個整數後沒有加L時,預設為int型別。
   if 要把一個數定義為long型別,需要在這個數後面加L。

小數的型別:

            float     32 bit      可以保留7位小數位
            double     64 bit      可以保留15位小數位
  注意:
 一個小數如果後沒有識別符號時,預設為double型別。
  if 要定義為float型別,需要在這個數後面加f。f不區分大小寫。

布林型別:

 只有兩個值 true or  false
          boolean   1個位元組或者4個位元組
注意:
 if  boolean 宣告一個基本型別的變數時, 該變數佔4個位元組
 if  boolean 宣告一個數組型別時, 每個數字型別佔1個位元組

字元型別:

         char   2個位元組 (16 bit) 

class檔案執行注意:

 1.一個class檔案要在使用時才會載入到記憶體中,而靜態程式碼塊在檔案
    載入中執行。

程式碼:


 class  demo1
{

    public static void
main(String[] args) { System.out.println(10); System.out.println(0b10); //將一個二進位制數以十進位制輸出 二進位制以0b開頭 System.out.println(010); //將一個八進位制數以十進位制輸出 八進位制以0開頭 System.out.println(0x10); //將一個十六進位制數以十進位制輸出 十六進位制以0x開頭 long mong = 10000000000000000L; System.out.println(mong); float
mong = 4.55555f; System.out.println(mong); boolean mong = true; System.out.println(mong); */ } } class nihao { /*凡是byte, short,char資料型別在運算時都會自動傳換成int型別的資料。 java 編譯器在編譯時能夠確認一個常量的值,並判斷這個常量是否在所定義的資料型別,並允許賦值。 但在編譯時不能確定變數裡儲存的值。 變數裡儲存的值是在執行時才分配空間。 */ public static void main( String [] args){ int i = 10; long j = 20L; i = (int)(i + j); System.out.println(i); } } class nihao { public static void main( String [] args){ byte b1 = 1; byte b2 = 2; // b2 = b2 + b1; //報錯。。需要強制轉換。 b2 += b1; //java編譯器已經進行強制轉換。 System.out.println(b2); byte s =10; long t = 30; System.out.println(s<t); // 兩個不同資料型別可以比較大小,比較時會先把b的型別轉換為long型別。 } } class nihao { //位運算可能出現的筆試題: // 1,交換兩個變數的值,不準出現第三方變數 // 2. 取出一個二進位制的指定位數。 public static void main( String [] args){ int a = 3; int b = 5; a= a^b; b= a^b; a= a^b; System.out.println("a = "+ a + "b = " + b); } } class nihao { // 如果+號用於字串的時候,+ 號就是連線符。 public static void main( String [] args){ int i1 = 13; System.out.println(1 + 2 +3 + 4 + "ssss" + 5 + 6); // 輸出 10ssss56 } } class nihao { //取模運算時,結果的正負取決於被除數的正負。 public static void main( String [] args){ double a = 10.00; int b = 3; System.out.println(a/b); //輸出 3.33333333333335 System.out.println(-a%b); //輸出 -1.0 System.out.println(a%-b); //輸出 1.0 System.out.println(-a%b); //輸出 -1.0 } } class nihao { /* 後自增(i++)在jvm的執行原理: jvm 會先宣告一個變數用於儲存沒有 +1 之前的值。 1. int temp = i; 2. 自增。 i = i + 1; 3. temp 的值返回給表示式結果。 i 的 值發生幾次變化: i = 0 -----> 1 ------> 0 */ public static void main( String [] args){ int i = 0; i = i++; System.out.println("i = "+i); //輸出 0 } } class nihao { public static void main( String [] args){ byte b1 = 1; byte b2 = 2; // b2 = b2 + b1; //報錯。。需要強制轉換。 b2 += b1; //java編譯器已經進行強制轉換。 System.out.println(b2); } class demo1 { public static void main(String[] args ){ int[] arr = new int[2]; arr = null; arr[1] = 10; System.out.println(arr[1]); // 該程式會報錯 空指標異常 } }