我正在开发一个需要动态更改空格数的应用程序。 每次我需要增加一个空格。我知道它背后的逻辑,但我找不到任何文档来帮助解决语法问题。
System.out.printf("%3s", " ");
上面的代码在嵌套循环中,我希望数字3是动态的。数字需要是变量才能完成我需要它做的事情。 如何在s之前将数字设置为变量?
答案 0 :(得分:2)
像:
int gap = 3;
System.out.printf("%" + gap + "s", " ");
答案 1 :(得分:0)
String space = ""
for(int i = 0; i < 5; i++){
space += " ";
System.out.printf("%s", i + space + ",");
}
答案 2 :(得分:0)
在格式打印输出中,格式说明符以百分号(%
)开头,以转换器(s
)结束。转换器是一个字符,指示要格式化的参数类型。在百分号(%)和转换器之间,您可以使用可选的标志和说明符(width
,精度,符号)。
long n = 461012;
System.out.format("%08d%n", n); // prints "00461012"
在上面的例子中:
d
是一个转换器,指定要打印为十进制整数的目标参数n
。 08
是一个标志:指定打印的十进制整数宽度应为八个字符,必要时带前导零。查看文档:{{3}}和Class Formatter