次のコードを使用して、小数点以下2桁と千単位のカンマ区切り文字で数値を表示しています。
public static String formatNumber(double amount){
DecimalFormat formatter = new DecimalFormat("#,###.00");
return formatter.format(amount);
}
他の数値の場合は問題ありませんが、0は「.00」として返されます。「0.00」にしたいのですが、何を変更すればよいですか?
何故なの
return String.format("%.2f", amount);
それはそれを正しくフォーマットするでしょうね? (金額が123123.14233の場合、123123.14が返されます)
または
return String.format("%,.2f", amount);
数値内のコンマの場合。 (金額が123123.14233の場合、123,123.14が返されます)
#
はオプションの数字を意味するため、代わりに0
を使用すると、次のように機能します。
DecimalFormat formatter = new DecimalFormat("#,##0.00");
ところで:私はあなたが4ではなく3 ###
が必要だと思います。