Java數組使用以及foreach循環
二話不說,先甩一個簡單的程序:
final int NUM= 10;
int[] arrays = new int[NUM];
System.out.println(arrays.length);//10
for(int i = 0;i<5;i++){
arrays[i] = i;//賦值
}
//foreach
for(int element:arrays){
System.out.print(element+" ");
}
// 0 1 2 3 4 0 0 0 0 0
- 動態創建一個數組arrays,指定數組長度為10。
- 索引從0開始,以長度減1結束,越界會報錯。
- 用
length
屬性可以得到數組的長度,例如arrays.length
. 數組名[index]
訪問數組元素,即可對其進行賦值操作。- 由於動態初始化,沒有進行賦值的部分為系統默認值0。
- 輸出打印運用了foreach循環,是Java中為數組和集合而生的循環。
foreach循環
格式:
for(元素類型 元素:數組名){...}
- 可以看出,相比for循環,foreach不關心數組的長度,也不需要靠索引值來訪問數組元素,而是遍歷所有的元素。
- 元素類型和數組類型總該一樣吧,不然咋放進去。
- 書上看到一種說法,讓我印象深刻:for each element in array,意思就是數組中的每一個元素。
注意:
int []arrays = {1,2,3,4,5};
// int i;
System.out.println("使數組中每個元素加1");
for(int i:arrays){
i+=1;
System.out.print(i+" ");
}
System.out.println();
System.out.println("修改后:");
for(int j:arrays){
System.out.print(j+" ");
}
/**
使數組中每個元素加1
2 3 4 5 6
修改后:
1 2 3 4 5*/
- 在foreach中對數組元素賦值並沒有作用。
- 在進行foreach循環時,其實系統將數組的元素賦給了臨時變量,所以並不會改變原來數組。