gpt4 book ai didi

java - 如何让 NumberFormat 使用货币但带有小数美分/便士?

转载 作者:行者123 更新时间:2023-12-02 02:04:31 25 4
gpt4 key购买 nike

我想使用 NumberFormatDouble 转换为 String。我目前正在使用基于货币区域设置的 NumberFormat,但这会将 Double 四舍五入到小数点后两位。我怎样才能让它不四舍五入货币,以便它包含小数便士?

如果我有

val doubleFormatMoney = 1.032323135

val format = NumberFormat.getCurrencyInstance(Locale.US)

val stringFormatMoney = format.format(doubleFormatMoney)

然后我们应该有 stringFormatMoney = $1.032323135 但我得到 stringFormatMoney = $1.03

最佳答案

每个区域设置的货币格式规范包括要使用的小数位数,因为这因货币而异(某些货币使用 3dp,例如约旦第纳尔)。因此,NumberFormat.getCurrencyInstance(Locale.US) 根据定义包括四舍五入到 2dp。

如果您想使用标准的 Double toString 加上区域设置的货币符号,您可以这样做:

Currency.getInstance(Locale.US).getSymbol(Locale.US) + doubleFormatMoney

参见How to get the currency symbol for particular country using locale?

关于java - 如何让 NumberFormat 使用货币但带有小数美分/便士?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51020248/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com