丢失精度的问题用这种相减的方式太麻烦,可以这样做

来源:8-6 微信异步通知(下)

chrishhdbx

2017-08-11

在比较微信金额和本地的金额是否相等的时候,可以将

payResponse.getOrderAmount() 转化为string  然后再new bigdecimal

这样比较就一样了

写回答

2回答

慕桂英9607192

2017-08-11

应该是相减的效率更高哇,转成string效率比较低的

2
0

No_7479

2019-11-06

我也觉得这种比较好,做成工具类入参Double方法内转成String再BigDecimal直接用计算方法不需要进行比较了。

1
1
廖师兄
楼主说的挺好的,另外,不需要转String再new BigDecimal, 可以直接用BigDecimal.valueOf(0.01)
2019-11-07
共1条回复

Spring Boot双版本(1.5/2.1) 打造企业级微信点餐系统

从0到1开发中小型企业级Java应用,并学会迭代重构技巧

6410 学习 · 5247 问题

查看课程