二维数组
1.含义
包含了多个一维数组
2.声明
数据类型[][] 数组名;
3.数组的初始化
静态初始化:数据由程序员指定,长度由系统自动分配
动态初始化:长度由程序员指定,数据由系统赋默认值整数类型:0
* 浮点类型:0.0
* 字符类型:’ ’
* 布尔类型:false
* 引用类型:null
//静态初始化1
//String[][] names = new String[][]{{"深田咏美","爱田奈奈","京香julia"},{"明日花绮罗","小峰由衣","泽村丽子","小泽玛利亚"}};
//静态初始化2
//String[][] names;
//names = new String[][]{{"深田咏美","爱田奈奈","京香julia"},{"明日花绮罗","小峰由衣","泽村丽子","小泽玛利亚"}};
//静态初始化3
String[][] names = {{"深田咏美","爱田奈奈","京香julia"},{"明日花绮罗","小峰由衣","泽村丽子","小泽玛利亚"}};
//设置指定下标上的元素
names[0][2] = "林成";
//获取指定下标上的元素
String name = names[0][2];
System.out.println("获取指定下标上的元素:" + name);
//获取长度
System.out.println("获取二维数组中一维数组的个数:" + names.length);//2
System.out.println("获取二维数组中第一个一维数组的元素个数:" + names[0].length);//3
System.out.println("获取二维数组中第二个一维数组的元素个数:" + names[1].length);//4
System.out.println("------------");
//遍历 - for循环
for (int i = 0; i < names.length; i++) {
for (int j = 0; j < names[i].length; j++) {
System.out.println(names[i][j]);
}
}
System.out.println("------------");
//遍历 - foreach
for (String[] strings : names) {
for (String string : strings) {
System.out.println(string);
}
}
}
//动态初始化1
//String[][] names = new String[2][3];//2个一维数组,每个一维数组中有3个元素
//动态初始化2
String[][] names;
names = new String[2][3];//2个一维数组,每个一维数组中有3个元素
//设置指定下标上的元素
names[0][0] = "林成a";
names[0][1] = "林成b";
names[0][2] = "林成c";
names[1][0] = "林成d";
names[1][1] = "林成e";
names[1][2] = "林成f";
//获取指定下标上的元素
String name = names[0][2];
System.out.println("获取指定下标上的元素:" + name);
//获取长度
System.out.println("获取二维数组中一维数组的个数:" + names.length);//2
System.out.println("获取二维数组中第一个一维数组的元素个数:" + names[0].length);//3
System.out.println("获取二维数组中第二个一维数组的元素个数:" + names[1].length);//4
System.out.println("------------");
//遍历 - for循环
for (int i = 0; i < names.length; i++) {
for (int j = 0; j < names[i].length; j++) {
System.out.println(names[i][j]);
}
}
System.out.println("------------");
//遍历 - foreach
for (String[] strings : names) {
for (String string : strings) {
System.out.println(string);
}
}
}
4.二维数组的动态初始化
1 需求
使用动态初始化二维数组,其中第一个一维数组有3个元素,第二个一维数组有4个元素
//动态初始化:标注二维数组中有2个一维数组
String[][] names = new String[2][];
//把长度为3的一维数组赋值给二维数组中下标为0的位置
names[0] = new String[3];
//把长度为4的一维数组赋值给二维数组中下标为1的位置
names[1] = new String[4];
System.out.println("获取二维数组中一维数组的个数:" + names.length);//2
System.out.println("获取二维数组中第一个一维数组的元素个数:" + names[0].length);//3
System.out.println("获取二维数组中第二个一维数组的元素个数:" + names[1].length);//4
}