我有一个三维整数数组,并希望以这种格式漂亮地打印它:
[n,n,n] [n,n,n] [n,n,n]
[n,n,n] [n,n,n] [n,n,n]
[n,n,n] [n,n,n] [n,n,n]
[n,n,n] [n,n,n] [n,n,n]
[n,n,n] [n,n,n] [n,n,n]
[n,n,n] [n,n,n] [n,n,n]
[n,n,n] [n,n,n] [n,n,n]
[n,n,n] [n,n,n] [n,n,n]
[n,n,n] [n,n,n] [n,n,n]
我尝试使用下面的代码,但由于第二列和第三列必须追加到与第一列相同的行,所以打印不正确:
int[][][] table = {
{{1, 2, 3, 4, 5, 6, 7, 8, 9}, {1, 2, 3, 4, 5, 6, 7, 8, 9}, {1, 2, 3, 4, 5, 6, 7, 8, 9}},
{{1, 2, 3, 4, 5, 6, 7, 8, 9}, {1, 2, 3, 4, 5, 6, 7, 8, 9}, {1, 2, 3, 4, 5, 6, 7, 8, 9}},
{{1, 2, 3, 4, 5, 6, 7, 8, 9}, {1, 2, 3, 4, 5, 6, 7, 8, 9}, {1, 2, 3, 4, 5, 6, 7, 8, 9}}
};
public String toString() {
String s = "";
for (int i = 0; i < table.length; i++) {
for (int j = 0; j < table[i].length; j++) {
for (int k = 0; k < table[i][j].length; k++) {
if (k == 2 || k == 5) {
s += table[i][j][k] + "\n";
} else {
s += table[i][j][k] + "";
}
}
s += "\n\n";
}
s += "\n";
}
return s;
}
如果您是第一次将/ n替换为/ t,则您的解决方案正在工作:
int[][][] table = {
{{1, 2, 3, 4, 5, 6, 7, 8, 9}, {1, 2, 3, 4, 5, 6, 7, 8, 9}, {1, 2, 3, 4, 5, 6, 7, 8, 9}},
{{1, 2, 3, 4, 5, 6, 7, 8, 9}, {1, 2, 3, 4, 5, 6, 7, 8, 9}, {1, 2, 3, 4, 5, 6, 7, 8, 9}},
{{1, 2, 3, 4, 5, 6, 7, 8, 9}, {1, 2, 3, 4, 5, 6, 7, 8, 9}, {1, 2, 3, 4, 5, 6, 7, 8, 9}}
};
public String toString() {
String s = "";
for (int i = 0; i < table.length; i++) {
for (int j = 0; j < table[i].length; j++) {
for (int k = 0; k < table[i][j].length; k++) {
if (k == 2 || k == 5) {
s += table[i][j][k] + "\t";
} else {
s += table[i][j][k] + "";
}
}
s += "\n\n";
}
s += "\n";
}
return s;
}