(15)二维数组定义以及.length使用

来源:互联网 发布:矩阵分析第四章答案 编辑:程序博客网 时间:2024/06/17 16:53

一、二维数组的定义




二、内存表示:


①已确定几行几列的:




②没确定几列的:





3.举例(2内存表示的代码)


    /*     * 行列确定     */       int[][] arr=new int[3][4];       System.out.println(arr);   System.out.println(arr[0]);//在给列有几个时,为堆地址值   System.out.println(arr[0][1]);      /*       * 二维数组中,每列元素个数可以不同       * 可以对二维数组中,每个小数组手动初始化       */   int [][] arr1=new int[3][];   System.out.println(arr1[0]);//在没给列有几个时,初始化值为null   arr1[0]=new int[3];   arr1[1]=new int[1];   arr1[2]=new int[2];       /*        * 打印数组长度        */   System.out.println(arr1.length);//打印二维数组长度   System.out.println(arr1[2].length);//打印小数组的长度

4.编程练习

           /*    * 二维数组的另一种表示方式    * 需求:求二维数组中数据的总和    */   int [][]arr2= {{1,2,3},{4,5},{6,7,9},{8},{10,11,12}};   int sum=0;   for(int i=0;i<arr2.length;i++) {   for(int j=0;j<arr2[i].length;j++) {   sum=sum+arr2[i][j];   }   }   System.out.println("数组数据总和为:"+sum);
4:面试题目:

int [ ] x , y[ ];   《==》int [ ]x;int [ ][ ]y;

判断下列操作是否可行?

a.  x[0 ]=y;//y是二维数组,不能赋值给一维数组

b.  y[0]=x;//x是一维数组,可以赋值给小数组

c. y[0][0]=x;

d. x[0][0]=y;

e. y[0][0]=x[0];


















































原创粉丝点击