我有以下代码。在运行时,只要此方法执行生成UnknownFormatConversionException
,就会生成异常。我试图将值显示为2位小数。
public void totalPrice(Vector <Stock> temp){
if(!out){
cst = temp.elementAt(l).getCost();
cost = Double.parseDouble(cst);
tax = ((cost * q) * 2)/100;
price = (cost * q) + tax;
System.out.printf ("Product Cost: € %.2f\n", (cost * q));
System.out.printf ("Tax Total (2% rate): € %.2f\n", tax);
System.out.printf ("Net Cost: € %.2f\n", price);
System.out.println ("=============================================");
System.out.println ();
}
}
答案 0 :(得分:9)
如果要使用%%
字面值,请使用%
。此外,虽然不会导致您的错误,但您需要使用%n
而不是\n
。
即,
System.out.printf ("Tax Total (2%% rate): € %.2f%n", tax);
有关详情的更多信息,您需要查看Formatter API。
此外,如果您想显示货币,最好使用NumberFormat.getCurrencyInstance(Locale someLocale)
。