Java之路:陣列
阿新 • • 發佈:2018-12-08
陣列
陣列,顧名思義,即是一組資料,是有序資料的集合,陣列中的每個元素必須是相同的資料型別,可以用統一的陣列名和下標來唯一地確定陣列中的元素。從本質上說,它是儲存資料的一個容器。
在Java中,陣列也可以視為一種資料型別,它本身是一種引用型別。
引用型別(reference type),引用型別的變數非常類似於C/C++的指標。而指標變數放到Java中便是引用型別變數。
【定義】
資料型別[] 陣列名; // 定義一個數組,推薦使用這種方法
資料型別 陣列名[]; // 定義一個數組,不推薦使用
// 例如:
int[] arr1;
int arr2[];
以上兩種形式沒有區別,使用效果完全一樣。
與C、C++不同,Java在定義陣列時並不為陣列元素分配記憶體,因此[ ]中無需指定陣列元素的個數,即陣列長度,否則會報錯。
而且對於如上定義的一個數組是不能訪問它的任何元素的,我們必須要為它分配記憶體空間。
【初始化】
// 靜態初始化
int[] arr1 = {0, 1, 2, 3};
// 動態初始化
int[] arr2 = new int[3];
arr2[0] = 11;
arr2[1] = 22;
arr2[3] = 33;
// 或
// 靜態初始化
int arr3[] = {0, 1, 2, 3};
// 動態初始化
int arr4[] = new int[3];
【二維陣列】
資料型別[ ][] 陣列名;
資料型別 陣列名[][];
資料型別[] 陣列名[];
// 例如:
int[][] a;
int b[][];
int[] c[];
a = new int[3][4];
b = new int[3][4];
c = new int[3][4];
注
Java在定義二維陣列時更加靈活,允許二維陣列中每行的元素個數均不相同。例如:
int[][] num = {
{1,2,3,4,5},
{1,2,3},
{1,2,3,4,5,6,7,8,9}
}
// num[0] 表示第0行
// num.length 表示陣列的行數,3
// num[0].length 表示陣列第一行的元素個數,5