文章目录
数组定义
(1)动态定义
数组存储的数据类型[ ] 数组名 = new 数组储存的数据类型[长度];
int[ ] arr=new int[3];
(2)静态定义
数组存储的数据类型[ ] 数组名 = new 数组储存的数据类型[ ]{元素表};
int[ ] arr=new int[ ]{1,2,3,4,5};
int[ ] arr={1,2,3,4,5};
注意在静态方法定义时,右边中括号中不能写长度,且在用省略方式创建数组时,不能先声明再赋值,只能声明同时直接赋值。
一维数组
(1)声明
数据类型 数组名[ ];
数据类型[ ]数组名;
int arr[ ];
int[ ]arr;
Java语言在声明数组时不能指定其长度,即int arr[5]是非法的。
(2)初始化
a、静态初始化
数据类型 数组名=new 数组类型{元素表};
数据类型 数组名={元素表};
int [ ]arr=new int[ ]{1,2,3,4,5};
int [ ]arr={1,2,3,4,5};
b、动态初始化
数据类型 数组名=new 数据类型[数组长度];
int [ ]arr=new int[5];
不能同时指定数组长度和元素!!!
(3)访问
运用遍历数组每一个元素(同C相同)来访问每一个元素
int[]arr=new int[]{1,2,3};
for(int i=0;i<arr.lenth;i++){
System.out.println(arr[i]);
}
(4)数组声明、创建、元素赋值三合一
a、先声明再使用
int[] arr;
arr=new int[3];
b、声明并创建
int[]arr=new int[3];
c、声明、创建并赋值
int[]arr=new int[]{1,5,10};
for(int i=0;;i<arr.lenth;i++){
System.out.println(arr[i]);
}
二维数组
(1)定义
可以简单理解为数组的数组
(2)初始化
a、动态初始化
数据类型 数组名[ ][ ]=new 数据类型[m][n];
数据类型 [ ][ ]数组名=new 数据类型[m][n];
数据类型 [ ] 数组名[ ]=new 数据类型[m][n];
int [ ][ ] arr=new int[5][3];
//行列式的转置
int[][]arr1=new int[][]{{4,5,6},{2,3,9}};
int[][]arr=new int[arr1[0].lenth][arr1.lenth];
for(int i=0;i<arr1.lenth;i++){
for(int j=0;j<arr1[0].lenth;j++){
arr[j][i]=arr1[i][j];
}
}
b、静态初始化
数据类型[ ][ ] 数组名={{元素表1},{元素表2},{元素表3},…};
int[ ][ ] arr={{1,2,3},{4,5,6},{7,8,9}};
遍历
(1)双重for循环
int [][]arr=new int[][]{{1,2,3},{22,13,81}};
for(int i=0;i<arr.lenth;i++){
for(int j=0;j<arr[0].lenth;j++){
System.out.println(arr[i][j]+" ");
}
}
(2)增强for循环foreach
int [][]arr=new int[][]{{1,2,3},{22,13,81}};
for(int[]is:arr){
for(int[]i:is){
System.out.prinln(i+" ");
}
}
关于foreach增强循环
语法结构:
for(元素类型 元素名:遍历数组名)