java - 如何打印格式化的 BigDecimal 值?

我有一个 BigDecimal 字段 amount 代表金钱,我需要在浏览器中以 $123.00 之类的格式打印它的值, $15.50, $0.33.

我该怎么做?

(我看到自己唯一简单的解决方案是从 BigDecimal 获取 floatValue,然后使用 NumberFormat 为小数部分)。

最佳答案

public static String currencyFormat(BigDecimal n) {
    return NumberFormat.getCurrencyInstance().format(n);
}

它将使用你的 JVM 当前默认的 Locale选择您的货币符号。或者你可以指定一个Locale

NumberFormat.getInstance(Locale.US)

有关详细信息,请参阅 NumberFormat类。

https://stackoverflow.com/questions/3395825/

相关文章:

javascript - 在jQuery中将逗号添加到数字

Excel CSV - 数字单元格格式

java - Intellij 代码格式化,Java 新行注解

python - 使用标准 json 模块格式化 float

java - 生成用空格填充的固定长度字符串

html - Bootstrap 3.0 : How to have text and input

html - 是否可以在 Dreamweaver 中自动格式化您的代码?

string - 如何将 Int 转换为给定长度的字符串,前导零对齐?

python - Pandas :设置编号。最大行数

vim - 如何让 Vim 的 `J` 和 `gq` 命令在一段时间后使用一个空格?