golang吧 关注:6,366贴子:14,603
  • 6回复贴,共1

大佬们问个关于精度的问题

只看楼主收藏回复



如图 第二页的属性是float类型 这些属性需要自加这样就出现了浮点类型精度原因导致每次自加后有略微差距
在map里因为hash这点差距直接被无限放大 本来的千万数据直接来到百亿级
现在采用的方法是给每个属性一个允许误差(图二) 但是数据量仍然对不上 不知道问题何在
在线求教


IP属地:河南1楼2025-03-25 21:03回复
    数据量?我不是很懂你这具体的问题是啥?


    IP属地:广东来自Android客户端2楼2025-03-25 22:13
    收起回复
      广告
      立即查看
      为什么不把浮点*100 当成整数计算呢


      IP属地:四川3楼2025-03-25 22:19
      收起回复
        看起来类似于角色属性面板?无非有几种方式。简单说几个:1,用int来提高精度,比如用1e2作为精度来控制(例子就是金额,1.99可以用199来表示,计算时也是如此,只是显示时会进行转换) 2,记录成长路线,比如装备属性,装备和卸载不会在现属性上计算,而且重新计算整体。3,每次计算的结果进行取精度(避免计算结果太多小数,但这样结果比较粗糙)


        IP属地:广东来自Android客户端4楼2025-03-25 22:21
        收起回复