java 将千分位转为数字_java中千分位转回数值的问题

现在转换一个比很大的数字:

String str = "99996789987.1419";

BigDecimal bigDecimal = new BigDecimal(str);

NumberFormat numberInstance = DecimalFormat.getNumberInstance();

numberInstance.setMaximumFractionDigits(4);

String format = numberInstance.format(bigDecimal);

System.out.println(format);

结果: 99,996,789,987.1419

转千分位是没问题的,现在遇到的问题是千分位往回转:

System.out.println(numberInstance.parse(format));

结果: 9.67899871419E7

这怎么把他还原回去呢?

----------------------------------分割---------------------------------

现在找到一个方法,就是先将千分后的值用"."分割成两个,然后解析,最后再将小数位拼接过来:

String[] split = format.split("\\.");

Number parse = numberInstance.parse(split[0]);

System.out.println(parse + "." + split[1]);

结果:

82881d89f8956c8c8baa8c2b2af19308.png

有没有不这么麻烦的方法么...

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值