【问题标题】:Output Format Java输出格式 Java
【发布时间】:2017-03-25 01:07:11
【问题描述】:

我有一个作业 Q,我已经完成了大部分工作,但需要输出更整洁。我需要让用户选择 3-10 之间的行数和 5-10 之间的列数。

  1. 但输出需要使数字间隔均匀,但我无法让它工作!!?
  2. 我需要验证用户输入...如何?

示例代码:

Scanner s = new Scanner(System.in);

System.out.print("Please enter number of rows between the range of 3 to 10: ");

int count1 = s.nextInt();
System.out.print("Please enter number of Columns between the range of 5 to 10: ");
int count2 = s.nextInt();

for (int i = 1; i <= count1; i++) {
    for (int j = 1; j <= count2; j++) {

        System.out.print((i * j) + " ");
    }
    System.out.println("");
}

}
}

我附上了显示输出和我需要的图片。

【问题讨论】:

  • 这是一些有趣的 JavaScript。
  • 您可以在打印时将\t 用作制表符而不是空格。
  • 另外,验证用户输入只是检查输入是否(在这种情况下)在 3 到 10 之间,如果不是,则显示错误消息,即 That number is not valid. Please enter a valid number 并再次询问。提示,使用循环。

标签: java format pretty-print


【解决方案1】:

我更愿意将此作为评论留下,但声望低于 50 是可以的。请查看以下链接,它们应该为您提供一些见解:

一个类似的stackoverflow问题

Java output formatting for Strings

和 Java 文档

http://docs.oracle.com/javase/6/docs/api/java/util/Formatter.html#syntax

希望他们能帮助你。

编辑:

在回答您的第二个问题时,建议循环的评论将是一个不错的起点。类似于以下内容:

System.out.print("Please enter number of rows between the range of 3 to 10: ");
int count1 = s.nextInt();

while (count1 < 3 || count1 > 10) {
    System.out.print("That is not a valid input. Try again: ");
    count1 = s.nextInt();
}

当然count2 也是如此。您也可以将其设为一个单独的函数,并将count1count2 分别传递给它以减少重复代码。这里的循环条件count1 &lt; 3 || count1 &gt; 10会不断提示用户输入,直到在可接受的范围内。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-01-23
    相关资源
    最近更新 更多