2.7 二维数组

1.什么是二维数组

大数组中存小数组,之前学习的是一维数组,我们将一维数组放到一个数组当中,这个数组就是二维数组

2.二维数组的应用场景

当我们需要把数据分组管理的时候,就需要用到二维数组

3.二维数组的静态初始化

格式: 数据类型 [ ][ ] 数组名 = new 数据类型[ ]  [ ]元素1,元素2},{元素1,元素2;
例: int[ ][ ] arr = new int [ ][ ]1,2},{3,4;

简化格式:数据类型 [ ][ ] 数组名 = 元素1,元素2},{元素1,元素2;
例: int [ ][ ] arr = 1,2},{3,4;

代码演示:

public class IT梦 {  
    public static void main(String[] args) {  
        //二维数组的静态初始化  
        int[][] arr = new int[][]1,2},{3,4;  
        //简化格式  
        int[][] arr1 = 5,6},{7,8;  
        //数组定义建议一个一维数组单独写一行,方便阅读  
        int[][] arr3 ={  
            {1,2,3},  
            {4,5,6}  
        };  
    }  
}

4.二维数组的动态初始化

格式: 数据类型[ ]  [ ] 数组名 = new 数据类型[ m ]  [ n ];
m表示这个二维数组可以存放多少个一维数组
n表示每一个一维数组可以存放多少个元素

例:int[ ]  [ ] arr = new int[ 2 ]  [ 3 ];
该数组可以存放2个一维数组,每一个一维数组可以存放3个int类型的元素

代码演示:

public class IT梦 {  
    public static void main(String[] args) {  
        //二维数组的动态初始化  
        int[][] arr = new int[1][1];  
    }  
}

5.元素访问:

数组名[索引][索引];
例:arr[0][0];

6.二维数组遍历(先获取一维数组,再遍历一维数组获取元素):

public class IT梦 {  
    public static void main(String[] args) {  
        //二维数组的遍历  
        int[][] arr = {  
            {1,2,3},  
            {4,5,6}  
        };  
        //外循环:遍历二维数组获取里面的每一个一维数组  
        //内循环:遍历一维数组获取每一个元素  
        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();  
        }  
    }  
}

图片[1]-2.7 二维数组-IT熊技术站

7.二维数组的内存图

图片[2]-2.7 二维数组-IT熊技术站

8.二维数组小练习:

某商城每个季度的营业额如下(单位:万元)
第一季度:22,66,44
第二季度:77,33,88
第三季度:25,45,65
第四季度:11,66,99

要求计算出每个季度的总营业额和全年的总营业额

答案:

[content_hide]

public class IT梦 {  
    public static void main(String[] args) {  
        int[][] arr = {  
            {22,66,44},  
            {77,33,88},  
            {25,45,65},  
            {11,66,99}  
        };  
        int yearNumber = 0;  
        for (int i = 0; i < arr.length; i++) {  
            int[] quarterArr = arr[i];  
            int quatterNmuber = getQuarter(quarterArr);  
            System.out.println("第" + (i + 1) + "个季度的营业额为" + quatterNmuber + "万元");  
            yearNumber = yearNumber + quatterNmuber;  
            }  
            System.out.println("全年的营业额为" + yearNumber + "万元");  
    }  
    public static int getQuarter(int[] arr){  
        int sum = 0;  
        for (int i = 0; i < arr.length; i++) {  
            sum = sum + arr[i];  
        }  
        return sum;  
    }
         
}

图片[3]-2.7 二维数组-IT熊技术站

[/content_hide]

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容