二维数组
二维数组
数组中嵌套数组,数组中还是数组
定义、声明
数据类型 变量名;
数据类型[] 数组名; ---一维数组的声明
数据类型[][] 数组名; ---二维数组
数据类型[] 数组名[];
数据类型 数组名[][];
初始化
动态初始化: 创建数组对象的时候不赋值,后续赋值
数据类型[][] 数组名 = new 数据类型[一维的长度][二维的长度];
一维的长度:外层数组
二维的长度:内层的每一个小数组
数据类型[][] 数组名 = new 数据类型[一维的长度][];
数组名[0] = 内层数组的创建方式(不可以使用简略写法);
静态初始化:创建数组对象的同时不赋值
数据类型[][] 数组名 = new 数据类型[][]{
{1,2,3},{2,3},{4}...};
遍历
一维数组的遍历方式:
- 普通for–>遍历的数组的索引
- for…each->增强for->i作为数组中的每一个数据值
- 二维数组的遍历:
- 循环嵌套
import java.util.Arrays;
public class DimensionalTest {
public static void main(String[] args) {
// TODO Auto-generated method stub
int[][] arr=new int[3][2];
for(int i=0;i<arr.length;i++) {
for(int j=0;j<arr[i].length;j++) {
arr[i][j]=i;
}
}
System.out.println(Arrays.deepToString(arr));
String [][]arr1=new String[3][];
arr1[0]=new String[3];
arr1[1]=new String[2];
arr1[2]=new String[1];
arr1[0][0]="你";
arr1[0][1]="好";
arr1[0][2]="呀";
arr1[1][0]="中国";
arr1[1][1]="真好";
arr1[2][0]="我爱你中国";
System.out.println(Arrays.deepToString(arr1));
for(String[] a:arr1) {
for(String b:a) {
System.out.print(b);
}
}
arr1[0]=new String[] {"你","好","呀"};
arr1[1]=new String[] {"中国","真好"};
arr1[2]=new String[] {"我爱你中国"};
for(int i=0;i<arr1.length;i++) {
for(int j=0;j<arr1[i].length;j++) {
System.out.println(arr1[i][j]);
}
}
}
}
容器
Collection
接口 容器类的父接口
Lis