JAVA學習筆記3_數組

一.數組的語法:定義數組,初始化數組[x][]
1.數組類型:保存一組其餘類型的數據,元素類型
int[] /double[]
int[] intArray;//=int intArray[]//規則容許,規範不建議使用
2.數組的初始化//數組長度固定
2.1:靜態 int[] array={1,2,3,4,5};//用到已知數組全部元素,不支持修改
int[] array=new int[]{1,2,3,4,5};//給方法傳參。構造匿名數組
2.2:動態 int[] array=new int[數組的長度];
//array=new int[10] 存放了10個
2.3:不初始化 int[] array=null;//null 是空引用
3.數組的下標訪問[]
3.1 下標類型必定是jint
3.2 取值範圍 [0,array.length-1]// 注意下標取異常 ⽣"java.lang.ArrayIndexOutOfBoundsException"異常信息。
4.數組本質也是對象(objiect類的派生類)
4.1屬性 對象.屬性 array.length
int[] array=...;//傳了一組數
array.length;//數組中元素個數就本身知道了;java

二.數組模型(引用):能夠形象的比喻爲經過小盒子裏的信息)找到真實數據存放的位置;//就是引導調用的棧中的元素找到真實存放的堆區位置(只有一份)
1.引用類型的變量: 不管引用變量保存在棧上仍是堆上,背後的數據(對象)必定是在堆上
模型:
2.解析空間不一樣:
基本數據類型
引用數據類型
引⽤傳遞空間:同⼀塊堆內存空間能夠被不一樣的棧內存所指向。
3.方法傳遞:
3.1 不管是基本類型仍是引用類型,都是簡單的值傳遞。至關於拷貝了一份實參 到調用的函數(將實參賦給形參)。因此,形參的改變不影響實參
3.2 引用傳遞時,經過形參引用、修改真實對象(存放在堆中)的值,實參能夠感覺到變化
3.3 局部變量和參數保存在棧中://參數指的是形參數組

void main(){    
    int[] array={1,2,3,4,5};
    method1();//調用完後,1,2,3,4,5
    method2();//調用完後,1,2,200,4,5
}
void method1(int[] array){
    array=new int[10];//引用了另外一個數組,沒有引用原來的主函數中的數組,
                                    //執行完後,新引用的會被撤銷,仍是隻留下最早引用的主函數
                                //經過動態方式,將array指向新的數組,不會改變
}
void method2(int[] array){
array[2]=200;//改變了引用函數的值
}

JAVA學習筆記3_數組

相關文章
相關標籤/搜索