黑马程序员技术交流社区

标题: 二维数组的那些事 [打印本页]

作者: 3165346340    时间: 2018-10-7 23:02
标题: 二维数组的那些事

A:
a:二维数组格式1
                1:数据类型 数组名[][] = new 数据类型[m][n];
            int[][] arr = new int[3][2];
            2:数据类型[] 数组名[] = new 数据类型[m][n];
            int[]arr[]  = new int[3][2];
        注意下面定义的区别

                        int[] x;
                        int[] y[];                                     // x是一维数组,y是二维数组


b:二维数组格式2
          int[][] arr = new int[3][];
c:二维数组格式3
          int[][] arr = {{1,2,3},{4,5},{6,7,8,9}};

          ①int[][] arr1 = new int[3][2];                //代表二维数组中有3个一维数组,每个一维数组中有2个元素
                System.out.println(arr1);                                    //代表二维数组
                System.out.println(arr1[0]);                           //代表二维数组中第一个一维数组
                System.out.println(arr1[0][0]);                      //代表二维数组中第一个一维数组中的第一个元素

          ②int[][] arr = new int[3][];                                        //第二种格式
                arr[0] = new int[5];                       //第一号一维数组有5个元素
                arr[1] = new int[6];
                arr[2] = new int[7];
                System.out.println(arr[0]);

         ③int[][] arr = {{1,2,3},{4,5},{6,7,8,9}};                     //二维数组的第三种格式
                 System.out.println(arr.length);                                //代表一维数组的个数 3

        1:二维数组的遍历
                int[][] arr = {{1,2,3},{4,5},{6,7,8,9}};
                for (int x = 0;x < arr.length ;x++ ) {                        //外层循环获取到每一个一维数组
                        //arr[x]  arr[0] arr[1] arr[2]
                        for (int y = 0;y < arr[x].length ;y++ ) {  //内层循环获取到一维数组的每一个元素
                                System.out.print(arr[x][y] + " ");
                        }
                        System.out.print(" ");                     //1 2 3 4 5 6 7 8 9

        2:二维数组的累加
            int[][] arr = {{22,66,44},{77,33,88},{25,45,65},{11,66,99}};
                int sum = 0;                                                                                        //声明一个变量,进行累加操作
                for (int x = 0;x < arr.length ;x++ ) {
                        for (int y = 0;y < arr[x].length ;y++ ) {
                                sum = sum + arr[x][y];
                        }
                }
                System.out.println(sum);








欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2