zoukankan      html  css  js  c++  java
  • Java学习——二维数组

    最近学习了Java中的二维数组,用随笔记录一下

    二维数组的使用:
    1,理解:
    对于二维数组的理解,可以看作是一维数组array1又作为另一个数组array2的元素而存在。
    所以,从数组底层的运行机制上来看,是不存在多维数组的。

    2,使用:
    ① 二维数组的声明及初始化;
    ② 如何调用数组指定位置的元素;
    ③ 如何获取数组长度;
    ④ 如何遍历数组;
    ⑤ 数组元素的默认初始化值;
    ⑥ 理解二维数组的内存解析;
    public class array2 {
        public static void main(String[] args) {
            //1.二维数组的声明及初始化;
            int[][] arr1 = new int[][]{{1, 2, 3}, {4, 5}, {6, 7, 8}};//静态初始化
            String[][] arr2 = new String[3][2];//动态初始化1
            String[][] arr3 = new String[3][];//动态初始化2
            /*
            错误的声明方式:
            String[][] arr = new String[][2];
            String[4][3] arr = new String[][];
            int[][] arr1 = new int[3][3]{{1, 2, 3}, {4, 5}, {6, 7, 8}};等
            */
            //下面是几种正确的方式
            int arr4[][] = new int[3][4];
            int[] arr5[] = {{1, 2, 3}, {4, 5}, {6, 7, 8}};
    
            //2.调用二维数组指定位置的元素;
            System.out.println("-----------------------");
            System.out.println(arr1[0][1]);
            System.out.println(arr2[1][1]);//未赋值的元素为null;
            arr3[1] = new String[4];//把arr3的第二个元素,赋值为一个包含4个元素的数组
            //理解时应联系内存结构思考
            System.out.println(arr3[1][1]);
    
            //3.获取数组长度
            System.out.println("-----------------------");
            System.out.println(arr1.length);//3
            System.out.println(arr1[0].length);//3
            System.out.println(arr1[1].length);//2
    
            //4.如何遍历二维数组
            System.out.println("-----------------------");
            for (int i = 0; i < arr1.length; i++) {
                for (int j = 0; j < arr1[i].length; j++) {
                    System.out.print(arr1[i][j] + "  ");
                }
                System.out.println();
            }
            //5.数组元素的默认初始化值;
            /*规定:外层元素——arr1[0],arr1[1]等;
            内层元素——arr1[0][2],arr1[1][1]等;*/
            System.out.println("-----------------------");
            int arr7[][] = new int[4][3];
            System.out.println(arr7[0]);//地址值 [I@4554617c
            System.out.println(arr7[0][0]);//0   已经到内层了
    
            System.out.println("-----------------------");
            String arr8[][] = new String[4][3];
            System.out.println(arr8[1]);//地址值 [Ljava.lang.String;@74a14482
            System.out.println(arr8[1][1]);//null
    
            System.out.println("-----------------------");
            double arr9[][] = new double[4][];
            System.out.println(arr9[1]);//null
            System.out.println(arr9[1][0]);//报错,空指针异常
        }
    }            
  • 相关阅读:
    【Css】SCSS基本语法
    【Css】Scss 与 Sass 简单示例
    【移动端】cordova在app中打开外部链接——cordova-plugin-inappbrowser
    border-radius圆角边框属性讲解
    css 设置 transform 无效
    linux下设置php执行命令
    linux下php命令无法使用如何解决
    微信小程序 --- 表单输入验证(手机号、邮箱验证、输入非空)
    微信小程序倒计时组件开发
    小程序--三级联动
  • 原文地址:https://www.cnblogs.com/xianghaoran/p/12227378.html
Copyright © 2011-2022 走看看