1、聲明數(shù)組
- 聲明形式一:
type arrayName[];- 聲明形式二:
type[] arrayName;
二維數(shù)組的聲明和一維數(shù)組類似,內(nèi)存分配也是使用new關(guān)鍵字。- 聲明:
type arrayName[][];- 初始化:
arrayName[][]=new type[行][列];//注意:行、列是方便理解加上的
示例:
//聲明數(shù)組
int arrayDemo[];
int[] score;
2、內(nèi)存的分配
為數(shù)組分配內(nèi)存空間,如果不分配內(nèi)存,將不能訪問它的任何元素。我們使用new關(guān)鍵字 來為數(shù)組分配內(nèi)存空間

代碼
public class Test {
public static void main(String[] args) {
int[] score = null; //數(shù)組的聲明
score=new int[3];//為數(shù)組開辟內(nèi)存空間,實(shí)例化
for (int i = 0; i < 3; i++) {
System.out.println(score[i]);
}
}
}
結(jié)果:
0
0
0
由于數(shù)組沒有被賦值,所以顯示默認(rèn)值.比如int類型的默認(rèn)值是0,string類型的默認(rèn)值是空。
3. 數(shù)組初始化
Java語(yǔ)言可使用new操作符動(dòng)態(tài)來初始化數(shù)組,語(yǔ)法如下:
arrayName= new dataType[arraySize];
只指定數(shù)組的長(zhǎng)度,讓系統(tǒng)來決定數(shù)組的元素的值。
如果數(shù)組元素是基本類型,那么所有數(shù)組元素的值都是 0 / 0.0 / false / \u0000 (只記都是零)
如果數(shù)組元素是引用類型,那么所有數(shù)組元素的值都是 null。
數(shù)組變量的聲明,和創(chuàng)建數(shù)組可以用一條語(yǔ)句完成,如下所示:
dataType[] arrayName = new dataType[arraySize];
另外,你還可以使用靜態(tài)初始化的方式創(chuàng)建數(shù)組。
dataType[] arrayRefVar = {value0, value1, ...};
只指定數(shù)組的元素,讓系統(tǒng)來決定數(shù)組的長(zhǎng)度。
4. 數(shù)組類型
Java 數(shù)據(jù)類型可以分為:基本類型 — 8 個(gè) 和 引用類型 — 類、接口、數(shù)組
數(shù)組是引用類型。
int → int [ ] — 整型數(shù)組
double → double [ ] — double 數(shù)組
……
String → String [ ] — String 數(shù)組
借助于數(shù)組,我們可以非常方便地去管理、訪問每個(gè)數(shù)組元素(相當(dāng)于一個(gè)變量)
Java數(shù)組的兩大特征:
Java語(yǔ)言是強(qiáng)類型: 一個(gè)數(shù)組里只能存儲(chǔ)一種數(shù)據(jù)類型的數(shù)據(jù)
Java語(yǔ)言是靜態(tài)的: Java的數(shù)組一旦被初始化之后,它的長(zhǎng)度是固定的。
定義數(shù)組時(shí),不能指定數(shù)組的長(zhǎng)度
數(shù)組類型是引用類型。
引用類型的本質(zhì)就是指針?!羔樢彩亲兞?,只不過它里面存的值是內(nèi)存編號(hào)(內(nèi)存地址)
數(shù)組變量只是一個(gè)引用,因此聲明時(shí)只是定義了一個(gè)引用變量,并未真正指向有效的數(shù)組對(duì)象(存在),也就是并未真正指向有效的內(nèi)存,因此不能聲明長(zhǎng)度,而且也不能使用。
5. 遍歷數(shù)組:
1.for循環(huán)
public static void forArr() {
int[] arr = new int[] { 1, 2, 3 };
for (int i = 0; i < arr.length; i++) {
int j = arr[i];
System.out.println(j);
}
}
輸出:
1
2
3
2. foreach
public static void foreachArr(){
int[] arr = new int[] { 1, 2, 3 };
for (int i : arr) {
System.out.println(i);
}
}
輸出:
1
2
3
。