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(源陣列名稱,源陣列開始點,目標陣列名稱,目標陣列開始點,拷貝長度);