java.util.UnknownFormatConversionException:Conversion=';2';
我一直收到此转换错误:java.util.UnknownFormatConversionException:Conversion=';2';,java,exception,Java,Exception,我一直收到此转换错误: > Exception in thread "main" java.util.UnknownFormatConversionException: Conversion = '2' at java.util.Formatter.checkText(Unknown Source) at java.util.Formatter.parse(Unknown Source) at java.util.Formatter.format(Unknown S
> Exception in thread "main" java.util.UnknownFormatConversionException: Conversion = '2'
at java.util.Formatter.checkText(Unknown Source)
at java.util.Formatter.parse(Unknown Source)
at java.util.Formatter.format(Unknown Source)
at java.util.Formatter.format(Unknown Source)
at java.lang.String.format(Unknown Source)
at BookTest.main(BookTest.java:40)
这是我遇到问题的代码:
double total = 0;
for (int i=0; i<quantityArray.length; i++)
{
message += String.format("%s %s $%2.f", bookArray[i].getTitle(), bookArray[i].getIsbn(), bookArray[i].calculateCharge(quantityArray[i]));
total += bookArray[i].calculateCharge(quantityArray[i]);
}
message += String.format("Total is: $%2.f", total);
JOptionPane.showMessageDialog(null, message);
双倍合计=0;
对于(int i=0;i而言,问题在于%2.f参数。您可能需要
String.format ("Total is: $%5.2f", total);
在本例中,5是字段的总宽度(包括小数点),2是小数位数。问题在于%2.f参数。您可能希望
String.format ("Total is: $%5.2f", total);
在本例中,5是字段的总宽度(包括小数点),2是小数位数。是:
如您所见,一个
后面必须跟一个精度值
您的值(%2.f
)无效。
如果要输出为$123.45
,则需要翻转2
,而
:%.2f
是:
如您所见,一个
后面必须跟一个精度值
您的值(%2.f
)无效。
如果要输出为$123.45
,则需要翻转2
和
:%.2f