1. 程式人生 > >java知識點總結(一)

java知識點總結(一)

java中的資料型別:基本資料型別1.數值型:整型(byte、short、int、long)浮點型(float、double),字元型(char),布林型別(boolean),布林型不能與任何型別進行轉換 

                                                        2.引用資料型別:陣列,類,介面

整型:在java中任何的整型常量通常都是int型別,強制轉換是將範圍的的資料型別變小

宣告long型別一般有兩種型別:推薦使用L型別(就是在數字的後面加上大寫的L,這樣就不用再用long宣告他的型別),不使用宣告

大的資料轉曉得資料型別必須強轉,曉得資料型別可以自動變為大的資料型別(在數學運算的過程中),大資料轉小資料可能發生資料丟失

所有的預設值在主方法包括靜態方法都無效。資料預設的值需要結合類來觀察

byte:儲存範圍-128-127  byte的初始值是0  Byte是byte的包裝類,Byte的初始值是null

1.如果整數常量值在byte範圍中,則可以將此整型常量賦值給byte常量,否則需要強轉

2.整型常量轉為byte常量,必須強轉

浮點型:java中所有的小數預設為double型別

定義float變數必須在小數後面加上F或者f,否則預設為double型

  3.字元型:char可以與int相互轉換

字元型的數字'0'與int型的數字0,不同但是可以使用【.PaseXX】方法或者【.valueof】方法         

java使用unicode編碼(16進位制),可以儲存所有的語言

String類:字串拼接可以直接使用【+】,在一個字串“+”數字時,就將數字轉換為了字串,驗證方法:在拼接後可以呼叫[【.length()】方法       

轉義字元:“\n”換行   "\t"水平製表符   "\"轉義字元

運算子:++、--  自增和自減

在java中“|”和“||”都是或者的意思

邏輯運算子(|、||、&、&&)“||”短路或:有條件返回true,剩餘條件不再判斷,直接返回true

“|”:明確表示,多個條件都需要判斷,如果在多個表示式中,有條件返回true,剩下的條件仍然需要判斷

推薦邏輯判斷使用短路與和短路非

右移一位就是除以2

switch(數字|列舉|字元|字串){

      case  選項:

        break;

      default:

             break;

}

java的方法傳遞只有值傳遞

方法過載:在一個類中,方法名相同,引數個數或者名稱不同,一定與返回值的型別無關

開發原則:要進行方法過載,請保證返回型別相同

方法簽名:方法名與引數(返回型別不屬於引數)

java陣列屬於引用資料型別,直接輸出陣列名稱時,輸出的就是陣列地址

陣列的動態初始化:宣告並開闢陣列

資料型別[]陣列名稱=new資料型別[長度]   在定義陣列時,只有new的時候才需要表明陣列長度,其他的時候可以不寫陣列長度,直接給定陣列:int data[]={1,2,3,4,5};

加強迴圈:  foreach迴圈,就是陣列的強引用。不能對陣列的值進行修改

引用傳遞:同一塊堆記憶體空間,被不同的棧記憶體指向  (new出來的變數和陣列,類的成員變數在堆區儲存且執行緒共享,基本資料型別變數,方法的區域性變數在棧區儲存執行緒不共享,未經new的常量在常量區儲存,)

完整格式:int []data=new int []{1,2,3,4,5};

在定義陣列時,推薦使用完整格式,因為只有完整格式才支援匿名陣列

匿名陣列:只有堆空間(只能是new出來的陣列),沒有棧指向,使用一次之後就變成垃圾,被系統回收

JDK對陣列的支援:

1. 排序:  呼叫java.util.Arrays.sort(基本資料型別的陣列)

底層:雙軸快速排序  預設升序處理

2.陣列拷貝

System.arraycopy(源陣列名稱,源陣列開始點,目標陣列名稱,目標陣列開始點,拷貝長度);