我需要在左侧和底部打印一个带有一些数字的2维数组。 这是我的初始化代码,它位于Grille类中:
class Grille {
String[][] grille = new String[7][8];
public Grille() {
for (int line = 0; line < grille.length; line++) {
for (int column = 0; column < grille[column].length; column++) {
grille[line][column] = " ";
}
}
}
我用这个打印我的数组,在同一个类Grille:
public void print() {
for (int line = 0; line < grille.length; line++) {
for (int column = 0; column < grille[line].length; column++) {
System.out.print(grille[line][column] + " ");
}
System.out.println("");
}
}
我想获得这个:
6
5
4
3
2
1
1 2 3 4 5 6 7
水平线中的数字之间有空格以区别并且知道它们不在同一列中
谢谢!!答案 0 :(得分:0)
这项任务非常简单。如果您有二维数组,请打印array[I][0]
,直至到达array.length
。
然后从J = 0
开始,打印array[I][J]
,直至到达array[i].length
。我是最后一行的索引。
将打印以下代码:
6
5
4
3
2
1
1 2 3 4 5 6
代码是:
public static void main(String[] args) {
int array[][] =
{
{6, 0, 0, 0, 0, 0},
{5, 0, 0, 0, 0, 0},
{4, 0, 0, 0, 0, 0},
{3, 0, 0, 0, 0, 0},
{2, 0, 0, 0, 0, 0},
{1, 2, 3, 4, 5, 6}
};
int array2[][] =
{
{6},
{5},
{4},
{3},
{2},
{1, 2, 3, 4, 5, 6}
};
print(array);
System.out.println("\n");
print(array2);
}
public static void print(int[][] array) {
for (int i = 0; i < array.length; ++i) {
if (i == array.length - 1) {
System.out.print(array[i][0] + "\n ");
for (int j = 0; j < array[i].length; ++j) {
System.out.print(array[i][j] + " ");
}
}
else {
System.out.println(array[i][0]);
}
}
}
答案 1 :(得分:0)
boolean b=true;
for(int i=0;i<array.length;i++)
{
for(int j=0;j<=i;j++)
{
if(i==array.length-1)
{
if(b)
{
System.out.print(array[i][0]+"\n");
b=false;
}
System.out.print(" "+array[i][j]);
}
else
{
System.out.print(array[i][j]);
break;
}
}
System.out.print("\n");
}