码迷,mamicode.com
首页 > 其他好文 > 详细

lua 实现策划需要保留的小数位数

时间:2019-01-02 21:40:14      阅读:249      评论:0      收藏:0      [点我收藏+]

标签:int   需求   floor   mat   lua   数字   str   验证   方式   

需求描述:

策划需求角色面板属性显示一定的小数位,

比如:攻击速度显示保留小数点后两位,0.01

 

保留小数实现方案:

1)字符串方式

local x = 12345.6789

string.format("%.2f", x)   -- 验证发现尾数是四舍五入,正好符合策划的需求,结果是12345.68

string.format("%.0f", x)   -- 这样也可以取整,四舍五入,结果是12346

string.format("%d", x)    -- 整数部分不会四舍五入,结果是12345

 

2)数字方式

local x = 12345.12345

print(x%0.1, x%0.01, x%0.001, x%0.0001, x - x%0.0001)

结果输出是:0.023460000...,0.00345999....., 0.00046000000...,0.00006..., 12345.1234   -- 验证发现尾数是直接截取的,并没有四舍五入效果

 

3)lua库接口:

local x = 12345.678

math.ceil(x) -- 向上取整,小数不为0整数加1,结果为12346 

如果想实现四舍五入,使用+0.5向下取整:math.floor(x+0.5)

lua 实现策划需要保留的小数位数

标签:int   需求   floor   mat   lua   数字   str   验证   方式   

原文地址:https://www.cnblogs.com/leilei-weapon/p/10211302.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!