私は自分の関数に次のステートメントを持っていますSystem.out.printf("The balance is %0.1f", acct.getBalance());
。時には残高が 0 になることがありMissingFormatWidthException
ます0.0
。0.0 より大きい double に対して完全に機能します。
2171 次
3 に答える
4
System.out.printf("The balance is %.1f",(double)acct.getBalance());
また
System.out.printf("The balance is %1.1f",(double)acct.getBalance());
%0.1f
print は、少なくとも幅が 0 で精度が 2 の浮動小数点として解釈されます。理想的には、エラーが発生するはずです。
于 2013-04-23T12:33:19.967 に答える
1
これを試して :
NumberFormat f = NumberFormat.getCurrencyInstance();
f.setMinimumFractionDigits(2);
double d = 0.0;
System.out.println(f.format(d));
出力:
$0.00
于 2013-04-23T12:31:33.643 に答える
1
これを試して:
System.out.printf("残高は %0.1f", acct.getBalance() !=0 ? acct.getBalance() : 0.0);
于 2013-04-23T12:35:12.583 に答える