一.二维数组
1.相关概念
包含了多个一维数组
2.数组的声明
String[] [] names;
二.数组的初始化
1.静态初始化
①静态初始化
数据由程序员指定,长度由系统分配
②初始化类型
//静态初始化1
String[][] names = new String[][]{{“麻生希”,“冯建豪”,“椎名空”},{“马聪”,“小西满里惠”,“李洲”,“波多野结衣”}};//静态初始化2
String[][] names;
names = new String[][]{{“麻生希”,“冯建豪”,“椎名空”},{“马聪”,“小西满里惠”,“李洲”,“波多野结衣”}};//静态初始化3
String[][] names = {{“麻生希”,“冯建豪”,“椎名空”},{“马聪”,“小西满里惠”,“李洲”,“波多野结衣”}};
③实验
//设置指定下标上的元素
names[0][2] = "向航";
//获取指定下标上的元素
System.out.println(names[0][2]);//向航
//获取长度
System.out.println("获取二维数组中一维数组的个数:" + names.length);//2
System.out.println("获取二维数组中第一个一维数组中元素的个数:" + names[0].length);//3
System.out.println("获取二维数组中第二个一维数组中元素的个数:" + names[1].length);//4
2.动态初始化
①动态初始化
长度由程序员指定,数据有系统默认分配
整数类型:0
浮点类型:0.0
字符类型:’ ’
布尔类型:false
引用类型:null - 空
②初始化类型
//动态初始化1
String[][] names = new String[2][3];//创建2个一维数组,每个一维数组包含3个元素//动态初始化2
String[][] names;
names = new String[2][3];//创建2个一维数组,每个一维数组包含3个元素
③实验
//设置指定下标上的元素
names[0][0] = "向航1";
names[0][1] = "向航2";
names[0][2] = "向航3";
names[1][0] = "向航4";
names[1][1] = "向航5";
names[1][2] = "向航6";
//获取指定下标上的元素
System.out.println(names[0][2]);//向航
//获取长度
System.out.println("获取二维数组中一维数组的个数:" + names.length);//2
System.out.println("获取二维数组中第一个一维数组中元素的个数:" + names[0].length);//3
System.out.println("获取二维数组中第二个一维数组中元素的个数:" + names[1].length);//4
三.二维数组遍历
//遍历 - for循环
for (int i = 0; i < names.length; i++) {//一维数组的下标
for (int j = 0; j < names[i].length; j++) {//第i个一维数组中元素的下标
System.out.println(names[i][j]);
}
}
System.out.println("----------------");
//遍历 - foreach
for (String[] ss : names) {
for (String n : ss) {
System.out.println(n);
}
}