數組概念 數組是存儲同一種數據類型多個元素的集合。也可以看成是一個容器。數組既可以存儲基本數據類型,也可以存儲引用數據類型。 數組的初始化 動態初始化:初始化時只指定數組長度,由系統為數組分配初始值。格式:數據類型[] 數組名 = new 數據類型[數組長度]; 數組長度其實就是數組中元素的個數。舉 ...
數組概念
數組是存儲同一種數據類型多個元素的集合。也可以看成是一個容器。數組既可以存儲基本數據類型,也可以存儲引用數據類型。
數組的初始化
動態初始化:初始化時只指定數組長度,由系統為數組分配初始值。
格式:數據類型[] 數組名 = new 數據類型[數組長度];
數組長度其實就是數組中元素的個數。
舉例:
int[] arr = new int[3];
解釋:定義了一個int類型的數組,這個數組中可以存放3個int類型的值。
靜態初始化:初始化時指定每個數組元素的初始值,由系統決定數組長度。
格式:
數據類型[] 數組名 = new 數據類型[]{元素1,元素2,…};
舉例:
int[] arr = new int[]{1,2,3};
解釋:定義了一個int類型的數組,這個數組中可以存放3個int類型的值,並且值分別是1,2,3。
其實這種寫法還有一個簡化的寫法
int[] arr = {1,2,3};
二維數組概述
我們學校的Java基礎班每個班有很多個學生,所以,可以用數組來存儲,而我們又同時有很多個Java基礎班。這個也應該用一個數組來存儲。如何來表示這樣的數據呢?Java就提供了二維數組供我們使用。
由此可見:其實二維數組其實就是一個元素為一維數組的數組。
二維數組定義格式
格式1
數據類型[][] 變數名 = new 數據類型[m][n];
m表示這個二維數組有多少個一維數組
n表示每一個一維數組的元素個數
舉例:
int[][] arr = new int[3][2];
定義了一個二維數組arr
這個二維數組有3個一維數組,名稱是arr[0],arr[1],arr[2]
每個一維數組有2個元素,可以通過arr[m][n]來獲取
表示獲取第m+1個一維數組的第n+1個元素
格式2
數據類型[][] 變數名 = new 數據類型[m][];
m表示這個二維數組有多少個一維數組
這一次沒有直接給出一維數組的元素個數,可以動態的給出。
舉例:
int[][] arr = new int[3][];
arr[0] = new int[2];
arr[1] = new int[3]
arr[2] = new int[1];
格式3
數據類型[][] 變數名 = new 數據類型[][]{{元素…},{元素…},{元素…}};
簡化版格式:
數據類型[][] 變數名 = {{元素…},{元素…},{元素…}};
舉例:
int[][] arr = {{1,2,3},{4,6},{6}};
數組操作常見的兩個小問題
數組索引越界:
ArrayIndexOutOfBoundsException
訪問到了數組中的不存在的索引時發生。
空指針異常:
NullPointerException
數組引用沒有指向實體,卻在操作實體中的元素時。