Java- %.2f 格式说明符抛出 MissingFormatArgumentException

Java- %.2f format specifier throwing MissingFormatArgumentException

我试图在 Java 程序中使用格式说明符来仅显示我正在打印的 double 变量的前 2 位小数。

现在,我打印 double 的语句是 System.out.format("Total = $%.2f" + value);(值是有问题的双精度值)。

当我 运行 我的程序时,它打印 "Total = $" 没有任何问题,然后立即给出 MissingFormatArgumentException.

控制台中的完整错误日志:

Total = $Exception in thread "main" java.util.MissingFormatArgumentException: Format specifier '%.3f'
    at java.util.Formatter.format(Unknown Source)
    at java.io.PrintStream.format(Unknown Source)
    at Account.getBalance(Account.java:21)
    at testAccount.main(testAccount.java:4)

我做错了什么?

System.out.print的参数不是("...%.2f" + x),是("...%.2f", x)

试试这个:

System.out.format("Total = $%.2f", value);