Java编程中二维数组的初始化和基本操作实例
作者:gonglianying
这篇文章主要介绍了Java编程中二维数组的初始化和基本操作实例,是Java入门学习中的基础知识,需要的朋友可以参考下
Java二维数组的声明和初始化
1.二维数组可以看成以数组为元素的数组;
2.Java中二维数组的声明和初始化应按照从高维到低维的顺序进行.
实例:
静态初始化:
Array2.java:
程序代码
public class Array2 { public static void main(String args[]) { int a[][] = {{1,2},{3,4,5,6},{7,8,9}} ; for(int i=0 ; i <a.length ; i++) { for(int j=0 ; j<a[i].length ; j++) { System.out.println("a[" + i + "][" + j + "]=" + a[i][j]) ; } } } }
动态初始化:
程序代码
public class Array2D { public static void main(String args[]) { int i , j ; String s[][] ; s = new String[3][] ; s[0] = new String[2] ; s[1] = new String[3] ; s[2] = new String[2] ; for(i=0 ; i<s.length ; i++) { for(j=0 ; j <s[i].length ; j++) { s[i][j] = new String("我的位置是:" + i + "," + j) ; } } for(i=0 ; i<s.length ; i++) { for(j=0 ; j<s[i].length ; j++) { System.out.println(s[i][j]) ; } } } }
关于Java中的二维数组操作[实例]:
public class Lesson{ public static void main(String [] args){ //二维数组的声明方式: //数据类型 [][] 数组名称 = new 数据类型 [长度][长度] ; //数据类型 [][] 数组名称 = {{123},{456}} ; /* int [][] arr = {{123},{456}}; //定义了两行三列的二维数组并赋值 for(int x = 0; x<arr.length; x++){ //定位行 for(int y = 0; y<arr[x].length; y++){ //定位每行的元素个数 System.out.print(arr[x][y]); } System.out.println("/n"); } */ int [][] num = new int [3][3]; //定义了三行三列的二维数组 num[0][0] = 1; //给第一行第一个元素赋值 num[0][1] = 2; //给第一行第二个元素赋值 num[0][2] = 3; //给第一行第三个元素赋值 num[1][0] = 4; //给第二行第一个元素赋值 num[1][1] = 5; //给第二行第二个元素赋值 num[1][2] = 6; //给第二行第三个元素赋值 num[2][0] = 7; //给第三行第一个元素赋值 num[2][1] = 8; //给第三行第二个元素赋值 num[2][2] = 9; //给第三行第三个元素赋值 for(int x = 0; x<num.length; x++){ //定位行 for(int y = 0; y<num[x].length; y++){ //定位每行的元素个数 System.out.print(num[x][y]); } System.out.println("/n"); } } } //数组值arr[x][y]表示指定的是第x行第y列的值。 //在使用二维数组对象时,注意length所代表的长度, //数组名后直接加上length(如arr.length),所指的是有几行(Row); //指定索引后加上length(如arr[0].length),指的是该行所拥有的元素,也就是列(Column)数目。
再来看一个例子:两个二维数组,将它们整合为一个新的二维数组,元素为两数组对应元素的和。输入两数组: {{1,5},{2,3},{6,5}}, {{4,2},{2,6},{5,7}}
输出打印: {{5,7},{4,9},{11,12}}
代码: class arraysCtrl{ static void arraysAdd(int[][] a,int[][] b) { StringBuffer sbResult = new StringBuffer("{"); int[][] result = new int[a.length][b.length]; for(int i=0;i<a.length;++i) { sbResult.append("{"); for(int j=0;j<a[i].length;++j) { result[i][j] = a[i][j]+b[i][j]; sbResult.append(result[i][j]); if(j == a[i].length-1) { if(i == a.length-1) { sbResult.append("}"); }else{ sbResult.append("},"); } break; } sbResult.append(","); } if(i == a.length-1) { sbResult.append("}"); break; } } System.out.println(sbResult); } public static void main(String[] args) { int[][] aTst1 = {{1,5},{2,3},{6,5}}, aTst2 = {{4,2},{2,6},{5,7}}; arraysAdd(aTst1,aTst2); } }