我的程序将输出一些行和列的图形表示。它要求用户输入他们想要查看数字的行数和列数。例如,如果用户选择4行3列,则应该打印一个图形(假设它由字符X组成),该图形有4行3列。
最终输出将如下所示:
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("");
}
}
答案 0 :(得分:4)
尝试这样的循环:
for ( int i = 0; i < numOfRow; i++ )
{
for ( int j = 0; j < numOfColum; j++ )
{
System.out.print(" X ");
}
System.out.println();
}
答案 1 :(得分:3)
尝试:
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
方法(这会阻止你在行尾有一个尾随空格):
for (int i = 0; i < numOfRow; i++) {
System.out.println(StringUtils.repeat("X", " ", numOfColumn));
}