我一直在尝试显示一个矩阵 3xn
,n
由短语介绍的长度决定。
问题本身是,而不是像这样为 abcdef 显示 3x2
矩阵
screenshot
我使用标准的方式打印它,行用 for
打印,列在里面用另一个打印:
for (int i = 0; i < v1idk.length; i++) {
for (int j = 0; j < v1idk.length; j++) {
System.err.println(Arrays.toString(v1idk[i])
+ Arrays.toString(v1idk[j]));
}
v1idk
是一个 int
变量。是不是跟System.err.println
有什么关系,还是这个位没有问题,我应该去别的地方搜索?
如果有必要,这里是 code 的其余部分
答案 0 :(得分:1)
在您的代码中,Arrays.toString(v1idk[i])
表示矩阵的第 I 行为字符串,Arrays.toString(v1idk[j])
表示矩阵的第 J 行为字符串。
让我们说v1idk = {{1, 2}, {3, 4}, {5, 6}}
。这里的 v1idk[0]
是 {1, 2}
,v1idk[1]
是 {3, 4}
,依此类推。
我希望你的问题现在已经清楚了。
我认为你的问题可以这样解决:
for (int i = 0; i < v1idk.length; i++) {
for (int j = 0; j < v1idk[0].length; j++) {
System.err.println(v1idk[i][j]);
}
}
//Output is 123456
如果要添加空格并查看不同行上的不同行,请按照以下代码操作:
for (int i = 0; i < v1idk.length; i++) {
for (int j = 0; j < v1idk[0].length; j++) {
//Adding space between consecutive elements
System.err.println(v1idk[i][j] + " ");
}
System.out.println(); //adds new line after each row
}
//Output is 123456
此处,v1idk.length
表示行数,v1idk[0].length
表示每列的长度。