Java二维数组(超详解)
二维数组
什么是二维数组?
元素为一维数组的数组就称为二维数组
二维数组的定义格式?
格式一:元素的数据类型[][] 数组的名字 = new 元素的数据类型[二维数组的长度][一维数组的长度]; int[][] arr = new int[3][2]; 这个二维数组中,有几个一维数组呢? 3个 每一个一维数组中有几个元素呢? 2个 格式二:元素的数据类型[][] 数组的名字 = new 元素的数据类型[二维数组的长度][]; int[][] arr = new int[3][]; 这个二维数组中,有几个一维数组呢? 3个 每一个一维数组中有几个元素呢? 不确定,而且每一个一维数组中的元素的个数是可以不一样的 格式三:元素的数据类型[][] 数组的名字 = { {元素1,元素2,...}, {元素1,元素2,...}, ...}; int[][] arr = { {1,2,3}, {4,5}, {5,6,7,8}}; 这个二维数组中,有几个一维数组呢? 3个 每一个一维数组中有几个元素呢? 第一个一维数组中有3个元素 第二个一维数组中有2个元素 第三个一维数组中有4个元素 每一个一维数组中的元素的个数是可以不一样的
二维数组的使用?
int[][] arr = new int[3][]; System.out.println(arr);//[[I@7852e922 System.out.println(arr[0]);//null System.out.println(arr[1]);//null System.out.println(arr[2]);//null int[] arr_1 = {1,2,3}; arr[0] = arr_1; int[] arr_2 = {4,5}; arr[1] = arr_2; int[] arr_3 = {6,7,8,9}; arr[2] = arr_3; System.out.println(arr[0]);//[I@4e25154f System.out.println(arr[1]);//[I@70dea4e System.out.println(arr[2]);//[I@5c647e05 System.out.println(arr[0][0]);//1 System.out.println(arr[0][1]);//2 System.out.println(arr[0][2]);//3 System.out.println(arr[1][0]);//4 System.out.println(arr[1][1]);//5 System.out.println(arr[2][0]);//6 System.out.println(arr[2][1]);//7 System.out.println(arr[2][2]);//8 System.out.println(arr[2][3]);//9
二维数组的遍历?
int[][] arr = { {1,2,3}, {4,5}, {5,6,7,8}}; for(int i = 0; i < arr.length; i++) { for(int j = 0; j < arr[i].length; j++) { System.out.print(arr[i][j] + " "); } System.out.println(); }