У меня есть a BigDecimal
поле amount
который представляет деньги, и я должен распечатать его значение в браузере в формате как $123.00
, $15.50
, $0.33
.
Как я могу сделать это?
(Единственное простое решение, которое я вижу сам, добирается floatValue
от BigDecimal
и затем использование NumberFormat
сделать двухразрядную точность для дробной части).
public static String currencyFormat(BigDecimal n) {
return NumberFormat.getCurrencyInstance().format(n);
}
Он будет использовать текущий языковой стандарт JVM по умолчанию
, чтобы выбрать символ валюты. Или вы можете указать Локаль
.
NumberFormat.getInstance(Locale.US)
Для получения дополнительной информации см. Класс NumberFormat
.