二维数组:二维数组中包含了多个一维数组
声明:数据类型[][] 数组名;
初始化:
1、静态初始化:由程序员指定元素,长度由系统分配
2、动态初始化:由程序员指定长度,元素由系统分配
整数类型默认值:0
浮点类型默认值:0.0
字符类型默认值:' '(空格)
布尔类型默认值:false
引用类型默认值:null(空)
一、数组的初始化
1、静态初始化:元素由程序员指定,长度由系统分配
//静态初始化一:
String[][] names = new String[][]{{"花","草","水"},{"光","田"}};
//静态初始化二:(先声明,再初始化)
String[][] names;
names = new String[][]{{"花","草","水"},{"光","田"}};
//静态初始化三:(简化写法一)
String[][] names = {{"花","草","水"},{"光","田"}};
2、动态初始化:长度由程序员指定,元素由系统分配
//动态初始化一:
String[][] names = new String[2][3];//2表示两个一维数组,3表示每个一维数组中有3个元素
//动态初始化二:先声明,再初始化
String[][] names;
names = new String[2][3];
二、遍历数组
遍历的思路:循环遍历二维数组中的一维数组,再循环遍历一维数组里的元素,涉及到嵌套for循环。
1、for循环遍历数组
//遍历 -- for循环
for (int i = 0; i < names.length; i++) {
for (int j = 0; j < names[i].length; j++) {
System.out.println(names[i][j]);
}
}
2、foreach遍历数组——增强for循环
//遍历 -- foreach/增强for循环
for (String[] ss : names) {//ss可以自定义名字
for (String element : ss) {//element可以自定义名字
System.out.println(element);
}
}
3、for vs foreach
遍历时使用到下标 -- for
遍历时不适用下标 -- foreach