Bet*_*ith 7 java string printf
新手在这里,但我最终在我的智慧.我已经完成了我的程序,但是在打印时只需要格式化方面的帮助.
if(count == 3)
System.out.printf ("%-15s %15s %15s %15s %15s %n", n, " is compatible with
",dates[k],dates[k+1],dates[k+2]);
Run Code Online (Sandbox Code Playgroud)
我的输出是
Stacey Francis is compatible with Owen Farrell Jack Clifford Joshua Watkins
Run Code Online (Sandbox Code Playgroud)
我希望我的输出是(不重复斯泰西弗朗西斯名称或"兼容":
Stacey Francis is compatible with Owen Farrell
Jack Clifford
Joshua Watkins
Run Code Online (Sandbox Code Playgroud)
只是想知道如何解决这个问题?
谢谢,
科斯蒂
是的,%n是printf的换行符.请参阅java.util.Formatter的文档,特别是转换表,它指定:
'
n'行分隔符结果是特定于平台的行分隔符
您的输出目前只有一个换行符,而不是您似乎想要它们的点.您需要使用以下格式:
"%-15s %15s %15s %n %15s %n %15s %n"
Run Code Online (Sandbox Code Playgroud)
(可能还有一些标签用于对齐).
%n应该有效。但问题是,您刚刚在格式字符串的末尾使用了它。您需要将其插入适当的位置:-
"%-15s %15s %15s %n %45s %n %45s"
Run Code Online (Sandbox Code Playgroud)
您还可以"\n"在格式说明符之间使用来打印换行符:-
System.out.printf ("%-15s %15s %15s \n %45s \n %45s",
n, " is compatible with ", dates[k],dates[k+1],dates[k+2]);
Run Code Online (Sandbox Code Playgroud)
此外,我已将length最后两个名称从15增加到45,以将它们格式化在前一个名称下方。
| 归档时间: |
|
| 查看次数: |
23175 次 |
| 最近记录: |