将String转换为Float保留小数位

时间:2019-07-04 16:59:32

标签: java string

我有一些Java字符串的格式设置为巴西货币,小数点后4位,例如:

1.000.000,0000 (1 million)
3,9590 (3 dollar and 9590 cents)
253,8999
10,0000

以此类推...

我想将其转换为浮点数,以便对此进行一些数学运算。

如何将字符串转换为浮点数保留小数点后4位?我尝试了Float.parseFloat()方法,但始终遇到NumberFormatException(可能是因为逗号)。

在网络上搜索时,我只会看到想要将Float转换为格式化字符串的人。

1 个答案:

答案 0 :(得分:3)

使用NumberFormat.parse()

NumberFormat nf = NumberFormat.getNumberInstance();
float val = nf.parse("3,9590").floatValue();

获取实例时,可以给它一个Locale,但是默认值是您当前的语言环境。