递归火山软件开发平台

标题: 被这安卓+sqlite的小数给烦死了,你们怎么处理的 [打印本页]

作者: 上等兵    时间: 2022-8-4 14:14
标题: 被这安卓+sqlite的小数给烦死了,你们怎么处理的
PC的时候好像也没遇到过这问题啊,会自动科学计数,然后就是各种精度丢失. 看别人的程序是直接弄成整数处理的.试了好多方法,老出问题,好像是数据库也有问题,安卓也有问题,对小数不友好.感觉真的只有把所有计算改为整数,再/100了.发下牢骚. 不知有没大佬有经验分享的

作者: 创世魂    时间: 2022-8-4 16:32
啥意思?没明白
作者: edu    时间: 2022-8-4 16:36
啥意思?没明白
作者: 穗玉天涯    时间: 2022-8-4 22:07
本帖最后由 穗玉天涯 于 2022-8-4 22:11 编辑

什么情况?
作者: urenai    时间: 2022-8-4 22:20
他的意思是没有单小数,计算数值不够友好,
可你不了解小数,不然你不会说精度这个词了。小数本身就存在精度问题。
你比喻说,输出1.3 ,实际值 是1.2999999或者1.300000001 记不得了。

之前发过以整数代替小数的使用和传值。那是基于内存4字节对齐原理。

而且,发生小数不友好的多数情况是在外部调用适配上。
如果你单单的使用sqlite3,为什么不在建表的时候就定义类型为双小数呢?
凡是多思考一下。

作者: 上等兵    时间: 2022-8-5 08:53
urenai 发表于 2022-8-4 22:20
他的意思是没有单小数,计算数值不够友好,
可你不了解小数,不然你不会说精度这个词了。小数本身就存在精 ...

对对,就是这情况,是个无限接近的数,不是这个数,计算就出错了.怎么定义类型为双小数,不会.只有整数,和浮点数啊,安卓上,超过8位,浮点的话就自动给科学显示了,pc上不会的.整数的话,反正计算的时候会多那么一点,少那么一点. 看别人方案就是给弄成整数,问题就是弄成整数了,要是和pc同步,不就又是个麻烦事.




欢迎光临 递归火山软件开发平台 (https://bbs.voldp.com/) Powered by Discuz! X3.4