二维数组

  如果把一维数组当成几何中的线性图形,那么二维数组就相当于表格。

  要使用二维数组,必须经过声明和分配内存两个步骤。

  二维数组的声明

    格式:

      数据类型 数组名[ ][ ]; 或 数据类型[ ][ ] 数组名;

     例: int arr[ ][ ];<==>int[ ][ ] arr;    

    声明数组类型变量:运行时系统只为变量在栈(zhàn)内存中分配空间,但不会为数组元素分配空间,因此不能使用任何数组元素

    声明数组类型变量时不允许指定数组长度  例:

            int arr[1][2];  或  double str[2][3];

   二维数组的内存分配

    格式:

      数组名=new 数据类型[行个数][列个数];

     例: score=new int[6][3];

  注意:在java中可将数组的声明和内存分配合为一体,格式如下

        数据类型 数组名[][]=new 数据类型[行个数][列个数];

     int score[ ][ ]=new intscore[6][3];  <==> int score[ ][ ];      score=new int[6][3];

    二维数组的初始化

         通常有三种形式:

    第一种 :

         数据类型 数组名[ ][ ]={{第0行初始},{第一行初始},....{第N行初始}};

         例如这个3行4列的数组: int score[ ][ ]={{26,65,32,77},{15,45,65,23},{87,79,78,45}};

           第二种:

      数据类型 a [ ][ ]=new int[指定行个数][指定列个数];

      a[0][0]=常量初始值1;   a[0][1]=常量初始值2;.....;      

      例如:     double[ ][ ]=new double[3][4]; 

      a[0][0]=3;    a[0][1]=5;.....;

      第三种: 

      例如:    int[ ][ ]  a2=new int[4][];    //四行长度

        for(int i=0;i<a2.length;i++){

          a1[i]=new int[i+1]         //列的长度每次+1,

          for(int j=0;j<a2[i].length;j++)

            a2[i][j]=i+j;

        } 

 二维数组的引用   

      引用数组元素的格式:

        数组名[元素行下标][元素列下标]

        a[0][0]=20;

        a[0][1]=30;

    使用二维数组 数组名.length可获得二维数组的行数;

    使用  数组名[i].length属性可获得二维数组的列数。

    

原文地址:https://www.cnblogs.com/l666/p/9496972.html