上等兵 发表于 2022-8-4 14:14:17

被这安卓+sqlite的小数给烦死了,你们怎么处理的

PC的时候好像也没遇到过这问题啊,会自动科学计数,然后就是各种精度丢失. 看别人的程序是直接弄成整数处理的.试了好多方法,老出问题,好像是数据库也有问题,安卓也有问题,对小数不友好.感觉真的只有把所有计算改为整数,再/100了.:@发下牢骚. 不知有没大佬有经验分享的

创世魂 发表于 2022-8-4 16:32:44

啥意思?没明白

edu 发表于 2022-8-4 16:36:45

啥意思?没明白

穗玉天涯 发表于 2022-8-4 22:07:54

本帖最后由 穗玉天涯 于 2022-8-4 22:11 编辑

:)什么情况?

urenai 发表于 2022-8-4 22:20:00

他的意思是没有单小数,计算数值不够友好,
可你不了解小数,不然你不会说精度这个词了。小数本身就存在精度问题。
你比喻说,输出1.3 ,实际值 是1.2999999或者1.300000001 记不得了。

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

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

上等兵 发表于 2022-8-5 08:53:55

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

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