麻烦使用printf%f%n和double,然后添加一个字符串?

时间:2016-02-11 00:36:43

标签: java printf

我试图制作一个包含6个专用字符和2个2位小数的数字列表,然后是" |"。

for (int c = 1; c < Config.MAX_VALUE; c++)
        System.out.printf("%6.2f %n",(double)c + "|");

我在添加&#34; |&#34;时遇到问题。并得到错误

&#34;线程中的异常&#34; main&#34; java.util.IllegalFormatConversionException:f!= java.lang.String&#34;

我如何正确格式化?

1 个答案:

答案 0 :(得分:5)

|字符移动到格式字符串,而不是格式参数。看起来你想要

 System.out.printf("%6.2f| %n",(double)c);

%f只知道如何设置数字类型的格式,并且您将String从转换c转换为double,然后转移到String },然后在末尾添加|。这会为您提供String%f不知道如何格式化。