JAVA二维数组遍历的方法

class Array2d
{
public static void main(String[] args)
{
int[][] twoD = new int[4][];
twoD[0] = new int[4];
twoD[1] = new int[5];
twoD[2] = new int[6];
twoD[3] = new int[7];
for(int i=0;i<twoD.length;i++)
{ for(int j=0;j<twoD[0].length;j++)
System.out.print(twoD[i][j]+" ");
System.out.print("\r");}
}
}
按说应该打印出一个零值的非矩形布局,我这里到底是哪里做错了,请教一下。
改了之后怎么只打出了最后一排的值,前面的都没有。谢谢。

JAVA二维数组遍历的方法:
1. 以下给出代码及相关的解释。
int [][]a=new int[8][8];//声明一个一个二维的整型数组。
for (int i=0;i<8;i++){//进行两次for 循环
for(int j=0;j<8;j++){
a[i][j]=i+j; //给每个元素赋值。
System.out.println(a[i][j]);//遍历每个元素,进行打印。
}
}

2.思路: 就是进行两次FOR循环, 就可遍历所有的元素。以此类推, 可知三维数组,就要进行三层的FOR循环。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2006-06-27
上面的仁兄应该说的没有错,
我还有一个差不多的算法,看看你有没有用;

import java.util.*;
public class MultiDimArray {
static Random rand = new Random();
static int pRand(int mod) {
return Math.abs(rand.nextInt()) % mod + 1;
}
public static void main(String[] args) {
int[][] a1 = {
{ 1, 2, 3, },
{ 4, 5, 6, },
};
for(int i = 0; i < a1.length; i++)
for(int j = 0; j < a1[i].length; j++)
prt("a1[" + i + "][" + j +
"] = " + a1[i][j]);
}
static void prt(String s) {
System.out.println(s);
}
}

参考资料:http://java.chinaitlab.com/others/17935.html

第2个回答  2006-06-27
内层循环for(int j=0;j<twoD[0].length;j++)应该改为for(int j=0;j<twoD[i].length;j++),否则循环终止条件永远是twoD[0]的长度。结果自然只能是一个4*4的矩阵
第3个回答  推荐于2018-03-01
{ for(int j=0;j<twoD[0].length;j++)

改为:

{ for(int j=0;j<twoD[i].length;j++)本回答被提问者和网友采纳
第4个回答  2020-03-17
JAVA二维数组遍历的方法:
1.
以下给出代码及相关的解释。
int
[][]a=new
int[8][8];//声明一个一个二维的整型数组。
for
(int
i=0;i<8;i++){//进行两次for
循环
for(int
j=0;j<8;j++){
a[i][j]=i+j;
//给每个元素赋值。
System.out.println(a[i][j]);//遍历每个元素,进行打印。
}
}
2.思路:
就是进行两次FOR循环,
就可遍历所有的元素。以此类推,
可知三维数组,就要进行三层的FOR循环。
相似回答