二维数组
二维数组
一、二维数组的声明、创建
1.二位数组可以看成一数组为元素的数组
二维数组一个数组中的数组
2.java中二维数组的声明和初始化应按照从高维到低维的顺序进行
示例:
int [][] arr1 = new int[10][]; //第二维长度未定
int [][] arr2 = new int [10][20]; //第二维长度确定
注意:虽然这两个数组的创建有区别,但系统为他们分配的堆内存空间大小是一样的
3.对于任何类型的二维数组而言,第一维的大小决定了二维数组对象的大小,因为二维数组的成员是数组引用,数组引用本身大小是固定的
二、初始化二维数组
1.静态初始化
int [][] arr = {{1,2},{3,4,5},{6,7,8,9}};
2.动态初始化
String [][] arrStr; //声明
arrStr = new String[3][]; //创建,分配内存
arrStr[0] = new String[2]; //为高维初始化
arrStr[1] = new String[3];
arrStr[2] = new String[4];
arrStr[0][0] = new String("abc00"); //为低维初始化
arrStr[0][1] = new String("abc01");
arrStr[1][0] = new String("abc10");
arrStr[1][1] = new String("abc11");
arrStr[1][2] = new String("abc12");
arrStr[2][0] = new String("abc20");
arrStr[2][1] = new String("abc21");
arrStr[2][2] = new String("abc22");
示例代码:
1 package com.sanlianxueuan; 2 3 public class Demo11 { 4 /* 二维数组*/ 5 public static void main(String[] args){ 6 int [][] array = new int [3][]; 7 //每个高维的数组指向一个低维的int数组 8 array[0] = new int [2]; 9 array[1] = new int [3]; 10 array[2] = new int [4]; 11 12 //给低维的数组进行赋值 13 array[0][0] = 1; 14 array[0][1] = 2; 15 array[1][0] = 3; 16 array[1][1] = 4; 17 array[1][2] = 5; 18 array[2][0] = 6; 19 array[2][1] = 7; 20 array[2][2] = 8; 21 array[2][3] = 9; 22 23 for(int i=0;i<array.length;i++){ 24 for(int j=0;j<array[i].length;j++){ 25 System.out.print(array[i][j]); 26 } 27 System.out.println(""); 28 } 29 30 } 31 }
运行结果: