如何创建一个接受键盘输入以打印出行和列的循环?
How do I create a loop that takes keyboard input to print out row and column?
我的程序将输出一些行和列的图形表示。它要求用户输入他们想要查看图形的行数和列数。例如,如果用户选择 4 行和 3 列,它应该打印一个具有 4 行和 3 列的图形(假设它由字符 X 组成)。
最终输出将如下所示:
X X X
X X X
X X X
X X X
现在的问题是我无法在我的 for 循环中设置逻辑以使其成为所需的形状。我试过了,但没弄明白。
这是我目前所做的:
package banktransport;
import java.util.*;
public class BankTransport {
static int NumOfRow;
static int numOfColum;
static Scanner input = new Scanner(System.in);
public static void main(String[] args) {
showRowCol(NumOfRow, numOfColum);
}
public static void showRowCol(int NumOfRow, int numOfColum) {
System.out.println("Enter row: ");
NumOfRow = input.nextInt();
System.out.println("Enter Col: ");
numOfColum = input.nextInt();
System.out.println("");
System.out.println("Visual Representation: ");
//print column and row
for (int i = 0; i < numOfColum; i++) {
System.out.print(" X ");
//System.out.println("");
//for(int j=1; j<(NumOfRow-1);j++){
// System.out.print(" Y ");
//}
}
System.out.println("");
}
}
尝试这样的循环:
for ( int i = 0; i < numOfRow; i++ )
{
for ( int j = 0; j < numOfColum; j++ )
{
System.out.print(" X ");
}
System.out.println();
}
尝试:
for (int i = 0; i < numOfRow; i++) {
StringBuilder line = new StringBuilder();
for (int j = 0; j < numOfColumn; j++) {
line.append("X ");
}
System.out.println(line.toString());
}
您还可以使用 Apache Commons Lang StringUtils.repeat
方法(这会阻止您在行尾添加尾随 space):
for (int i = 0; i < numOfRow; i++) {
System.out.println(StringUtils.repeat("X", " ", numOfColumn));
}
我的程序将输出一些行和列的图形表示。它要求用户输入他们想要查看图形的行数和列数。例如,如果用户选择 4 行和 3 列,它应该打印一个具有 4 行和 3 列的图形(假设它由字符 X 组成)。
最终输出将如下所示:
X X X
X X X
X X X
X X X
现在的问题是我无法在我的 for 循环中设置逻辑以使其成为所需的形状。我试过了,但没弄明白。
这是我目前所做的:
package banktransport;
import java.util.*;
public class BankTransport {
static int NumOfRow;
static int numOfColum;
static Scanner input = new Scanner(System.in);
public static void main(String[] args) {
showRowCol(NumOfRow, numOfColum);
}
public static void showRowCol(int NumOfRow, int numOfColum) {
System.out.println("Enter row: ");
NumOfRow = input.nextInt();
System.out.println("Enter Col: ");
numOfColum = input.nextInt();
System.out.println("");
System.out.println("Visual Representation: ");
//print column and row
for (int i = 0; i < numOfColum; i++) {
System.out.print(" X ");
//System.out.println("");
//for(int j=1; j<(NumOfRow-1);j++){
// System.out.print(" Y ");
//}
}
System.out.println("");
}
}
尝试这样的循环:
for ( int i = 0; i < numOfRow; i++ )
{
for ( int j = 0; j < numOfColum; j++ )
{
System.out.print(" X ");
}
System.out.println();
}
尝试:
for (int i = 0; i < numOfRow; i++) {
StringBuilder line = new StringBuilder();
for (int j = 0; j < numOfColumn; j++) {
line.append("X ");
}
System.out.println(line.toString());
}
您还可以使用 Apache Commons Lang StringUtils.repeat
方法(这会阻止您在行尾添加尾随 space):
for (int i = 0; i < numOfRow; i++) {
System.out.println(StringUtils.repeat("X", " ", numOfColumn));
}