Java建立陣列的方法
阿新 • • 發佈:2020-12-19
技術標籤:java
Java建立陣列的方法大致有三種
說明:這裡以int為資料型別,以arr為陣列名來演示
int[] arr = {1,2,4, …};
注意這裡的花括號不是語句塊,而且而且花括號後的分號也不能省,…不是元素意思是可以指定多個元素
int[] arr;
arr = new int[]{1,2,3, …};
int[] arr1= new int[3];
注意:最大元素下標為2,並且所有的元素值均為0
賦值一般用for迴圈
- int[][] arr = {{1,2,3},{4,5,6},{7,8,9}};
- int[][] arr = new int[m][n];//其中n可以省略,在建立的時候可以指定
- int[][][] arr = new int[m][n][q];//同樣其中n、q可以省略
- 無論那種方法宣告必須有 :資料型別 [ ] , 如:int[ ]
- 建立多維陣列時,new後面的第一個方括號中的元素數量總不能省略
- “new 資料型別[]{}”建立陣列時,其中花括號可以省去,但要在“[ ]”中填寫陣列的個數
各個建立陣列的方法使用演示如下
int[] arr2 = {10,20,30}; for(int element:arr2) { System.out.print(element+"\n");//其中 "\n" 是換行 }
- 1
- 2
- 3
- 4
輸出結果:
10
20
30
- 1
- 2
- 3
char[] arr4 ; //char型輸入時要用單引號(')引著!
arr4 = new char[] {'a','b','c'};
for(char element:arr4) {
System.out.print(element + " ");
}
- 1
- 2
- 3
- 4
- 5
輸出結果:
a b c
- 1
int[] arr = new int[10]; //換成i<10 或i<=9 因為 arr[10]不存在 強行呼叫會出錯(溢位)! for(int i = 0;i<=9;i++) { arr[i]=i; System.out.print(arr[i]+" "); }
- 1
- 2
- 3
- 4
- 5
- 6
輸出結果:
0 1 2 3 4 5 6 7 8 9
- 1
1.
int[][] arr = {{1,2,3},{4,5,6},{7,8,9}};
矩陣形式輸出為:
1 2 3
4 5 6
7 8 9
- 1
- 2
- 3
- 4
- 5
- 6
1.
int[][] arr = new int[m][n];
在賦值時使用for迴圈
for(int i=0;i<m;i++){
for(int j=0;j<n;j++){
arr[i][j] = int值;
}
}
若宣告時省略n,賦值時須在內層迴圈中生成新一維陣列
for(int i=0;i<m;i++){
arr[i] = new int[數量];
}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
二維以上的陣列使用的不多,又因為使用方法同二維基本相同,所以在這裡就不再演示了。
內容擴充套件
用於對陣列或實現Iterator介面的列表(ArrayList、LinkedList)集合(Set)等容器物件進行遍歷。
格式:
for (資料型別 : emelent){
System.out.println(emelent);
}
- 1
- 2
- 3
應用程式碼:
int[] arr2 = {10,20,30};
for(int element:arr2) {
System.out.print(element+"\n");
}
- 1
- 2
- 3
- 4
執行結果:
10
20
30
- 1
- 2
- 3
二者區別:
- length屬性是針對Java中的陣列來說的,要求陣列的長度可以用其length屬性
- length()方法是針對字串來說的,要求一個字串的長度就要用Java的length()方法
- Java中的size()方法是針對泛型集合(Set)或列表(List)說的,如果想看這個泛型容器中有多少元素,就呼叫此方法
應用程式碼:
for(int i=0;i<arr5.length;i++) {
arr5[i]=i;
}
- 1
- 2
- 3
作用:將陣列的元素生成字串,陣列的各個元素使用方括號括著 [ ]
格式:Arrays.toString(陣列名稱)
注意:此方法不能用於直接獲得二維陣列
應用程式碼:
int[] arr = {111,222,333};
System.out.println(Arrays.toString(arr));
- 1
- 2
執行結果:
[111, 222, 333]
- 1
希望以上對大家有幫助!