我是靠谱客的博主 顺利大米,这篇文章主要介绍使用Bigdecimal遇到的那些坑使用Bigdecimal遇到的那些坑,现在分享给大家,希望可以做个参考。

使用Bigdecimal遇到的那些坑

为了方便计算有关金钱的字段,将类型设置成BigDecimal,但是在请求返回数据以Json形式返回时,发现的有失精度
查网上有两种解决方法:
第一种:
数据类型直接设置成String类型,计算的时候转为BigDecimal,并设置它的小数点。

 BigDecimal usermaoney = new BigDecimal(user.getSummoney()).setScale(2);
 user.setSummoney(usermaoney.toString());

第二种:
字段依然是BigDecimal类型,只是在返回数据的时候,将对象转换成JsonArray类型

 JSONArray arrays= JSONArray.parseArray(JSON.toJSONString(kpiModels));
        for (int i = 0; i <arrays.size() ; i++) {
            JSONObject jsonObject=  arrays.getJSONObject(i);
            jsonObject.put("sellmongey",jsonObject.getBigDecimal("sellmongey").setScale(2).toString());
            arrays.set(i,jsonObject);
        }

总之是解决的燃眉之急,那里有问题,请高手多多指点。
请教诸位看小女博客的大神们:
在涉及数据时,常用类型要使用那个呢???

最后

以上就是顺利大米最近收集整理的关于使用Bigdecimal遇到的那些坑使用Bigdecimal遇到的那些坑的全部内容,更多相关使用Bigdecimal遇到内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(55)

评论列表共有 0 条评论

立即
投稿
返回
顶部