为什么sqlite函数round()在不同的android设备上返回不同的值?

qlckcl4x  于 2021-07-06  发布在  Java
关注(0)|答案(0)|浏览(259)

我正在创建一个小的android应用程序,在其中我使用java和sqlite进行一些数学计算。问题是,在某些设备中,sqlite函数round(…)返回的值与JavaMath.round(…)不同。
更准确地说,我的目标是将双数四舍五入到小数点后两位,在java中我使用了以下方法:

public static double round2(double value){
   value= Math.round(value* 100.0) / 100.0;
   return value;
}

在sqlite中,我的查询是: SELECT ROUND(total, 2) 运行上述代码,得到如下结果:
在java中,舍入66.875返回66.88
对于sql查询,在一些android设备中,结果是66.88(android api 28),而在其他设备中是66.87(api 24)。
任何人都遇到过同样的情况,请我想找到一种方法,以获得相同的四舍五入在java和sqlite在所有设备,无论设备的api是。

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题