package com.javase.进阶.数组;
/**
* 有关二维数组:
* 1、二维数组就是特殊的一维数组,也就是说,二维数组中的每一个元素都是一个一维数组
* 2、二维数组的静态初始化
* int[][] array = {{1,3,5,7},{2,4,6,8,10},{1,4,7},{2,5,8},{3,6,9}...}
* 3、二维数组中元素的读和写
* array[1][0] 表示二维数组中第2个一维数组中的第一个元素
* 4、二维数组的遍历
* for(int i = 0;i < array.length;i ++){
* for(int j = 0;j < array[i].length;j ++){
* System.out.print(array[i][j]);
* }
* System.out.println();
* }
* 5、动态初始化一个二维数组
* int[][] array = new int[3][4];//这行代码表示动态创建一个int类型二维数组,该数组中包括3个一维数组,每个一维数组中包含4个元素
*
*/
public class 二维数组 {
public static void main(String[] args) {
// 静态初始化一个二维数组
int[][] array = {
{1,3,5,7},
{2,4,6,8,10},
{1,4,7},
{2,5,8},
{3,6,9}
};
System.out.println(array.length);//5 本行代码获取的是二维数组的长度
System.out.println(array[0].length);//4 本行代码表示获取{1,3,5,7}的长度
System.out.println(array[3].length);//3 本行代码表示获取{2,5,8}的长度
// 读取第3个一维数组中第3个元素
System.out.println(array[2][2]);//7
// 改写第3个一维数组中第3个元素为99
array[2][2] = 99;
// 再次读取修改后的第3个一维数组中第3个元素
System.out.println(array[2][2]);//99
// 二维数组的遍历
for (int i = 0; i < array.length; i++) {
for (int j = 0; j < array[i].length; j++) {
System.out.print(array[i][j] + " ");
}
System.out.println();//本行代码的作用是换行 完整输出一个一维数组之后换行
}
// 动态创建一个二维数组
int[][] m = new int[3][4];
// 遍历该数组
for (int i = 0; i < m.length; i++) {
for (int j = 0; j < m[i].length ; j++) {
System.out.print(m[i][j] + ",");
}
System.out.println();//换行
}
}
}