赞
踩
二维数组其实是一位数组的嵌套(每一行看做一个内层的一维数组)
两种初始化形式
格式1: 动态初始化数据类型 数组名 [ ][ ] = new 数据类型[m][n]
数据类型 [ ][ ] 数组名 = new 数据类型[m][n]
数据类型 [ ] 数组名 [ ] = new 数据类型[m][n]
举例:int [ ][ ] arr=new int [5][3]; 也可以理解为“5行3例”
格式2: 静态初始化
数据类型 [ ][ ] 数组名 = {{元素1,元素2....},{元素1,元素2....},{元素1,元素2....}.....};
举例:int [ ][ ] arr={{22,15,32,20,18},{12,21,25,19,33},{14,58,34,24,66},};
静态初始化可用于不规则二维数组的初始化
- public static void main(String[]args){
- int [][] arr=new int[][]{{4,5,6,8},{2,3},{1,6,9}};
-
- System.out.println(arr.length);//输出行数
- System.out.println(arr[0].length);//输出列数
-
- }
输出结果:
举例:实现一个M*N的二维数组的转置并输出:
- public static void main(String[]args){
- int [][] arr=new int[][]{{4,5,6},{2,3,9}};
- int [][]arrtrans=new int[arr[0].length][arr.length];
- for(int i=0;i<arr.length;i++){
- for(int j=0;j<arr[0].length;j++){
- arrtrans[j][i]=arr[i][j];
- }
- }
- for(int i=0;i<arrtrans.length;i++){
- for(int j=0;j<arrtrans[0].length;j++){
- System.out.print(arrtrans[i][j]);
- }
- System.out.println();
- }
- }
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。