0

我正在开发一个需要我动态更改空格数的应用程序。每次我需要增加一个空间。我知道它背后的逻辑,但我找不到任何帮助语法的文档。

System.out.printf("%3s", " ");

上面的代码在嵌套循环中,我希望数字 3 是动态的。这个数字需要是一个变量才能完成我需要它做的事情。如何将 s 之前的数字设置为变量?

4

3 回答 3

3

喜欢:

int gap = 3;

System.out.printf("%" + gap + "s", " ");
于 2013-11-10T19:51:23.237 回答
0
String space = ""

for(int i = 0; i < 5; i++){
    space += " ";
    System.out.printf("%s", i + space + ",");
}
于 2013-11-10T19:53:40.750 回答
0

在格式化打印输出中,格式说明符以百分号 ( %) 开头,以转换器 ( ) 结尾s。转换器是一个字符,指示要格式化的参数类型。在百分号 (%) 和转换器之间,您可以使用可选的标志和说明符(width、精度、符号)。

long n = 461012;
System.out.format("%08d%n", n); // prints "00461012"

在上面的例子中:

  1. d是一个转换器,指定我们的目标参数n打印为十进制整数。
  2. 08是一个标志:指定打印的十进制整数的宽度应为八个字符,必要时带有前导零。

检查文档:Class Formatter and Formatting Numeric Print Output

于 2013-11-10T19:55:01.523 回答