有没有办法打印散布的二维数组行?
Is there a way to print interspersed rows of 2d arrays?
所以,我想打印第一个数字数组的第一行,然后在下一行打印第二个数组(字符串数组)的第一行,依此类推。
有办法吗?
这是我的代码:
for (int i = 0; i<=7 ; i++) {
for (int j = 0; j <=7 ; j++) {
System.out.print("| "+MatrizNumeros[i][j]+" |");
System.out.print(" ");
}
System.out.println(" ");
for (int k = 0; k <=7 ; k++) {
System.out.print("| "+MatrizCaracteres[i][k]+" |");
System.out.print(" ");
}
}
我希望输出如下所示:
印刷应该是怎样的:
您的代码一目了然,您只需在每个循环周期后的值和格式之前添加填充。
一个好的方法是创建一个添加填充的方法,这将有助于避免重复代码:
public void printArrayLine(String[][] array, int row){
//Value for padding (7 characters)
int padding = 7;
//Loop through the row
for (int x = 0; x < array.length; x++) {
//Get value
String value = array[row][x];
//Calculate padding
String padding = " ".repeat(padding - value.length());
//Print pipe, padding and value
System.out.print("|" + padding + value);
}
//Add a "|" the the end of the line and advance to the next line by adding a line separator
System.out.print("|" + System.getProperty("line.separator"));
}
你可以使用这样的方法:
for (int i = 0; i<=7 ; i++) {
//print a line of dashes "---"
System.out.print("-".repeat(57));
//Print a row from each array
printArrayLine(MatrizNumeros, i);
printArrayLine(MatrizCaracteres, i);
}
//print the final line of dashes "---"
System.out.print("-".repeat(57));
结果应该类似于您在任何控制台中使用单一字体的图像。
所以,我想打印第一个数字数组的第一行,然后在下一行打印第二个数组(字符串数组)的第一行,依此类推。
有办法吗?
这是我的代码:
for (int i = 0; i<=7 ; i++) {
for (int j = 0; j <=7 ; j++) {
System.out.print("| "+MatrizNumeros[i][j]+" |");
System.out.print(" ");
}
System.out.println(" ");
for (int k = 0; k <=7 ; k++) {
System.out.print("| "+MatrizCaracteres[i][k]+" |");
System.out.print(" ");
}
}
我希望输出如下所示:
印刷应该是怎样的:
您的代码一目了然,您只需在每个循环周期后的值和格式之前添加填充。
一个好的方法是创建一个添加填充的方法,这将有助于避免重复代码:
public void printArrayLine(String[][] array, int row){
//Value for padding (7 characters)
int padding = 7;
//Loop through the row
for (int x = 0; x < array.length; x++) {
//Get value
String value = array[row][x];
//Calculate padding
String padding = " ".repeat(padding - value.length());
//Print pipe, padding and value
System.out.print("|" + padding + value);
}
//Add a "|" the the end of the line and advance to the next line by adding a line separator
System.out.print("|" + System.getProperty("line.separator"));
}
你可以使用这样的方法:
for (int i = 0; i<=7 ; i++) {
//print a line of dashes "---"
System.out.print("-".repeat(57));
//Print a row from each array
printArrayLine(MatrizNumeros, i);
printArrayLine(MatrizCaracteres, i);
}
//print the final line of dashes "---"
System.out.print("-".repeat(57));
结果应该类似于您在任何控制台中使用单一字体的图像。