You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Lua中不使用+运算符拼接整数与浮点数两个变量

Lua 无加法运算符实现整数与浮点数合并方案

需求为将整数、浮点数两个变量合并得到对应组合后的浮点数,且不允许使用+运算符,可使用以下两种实现方式:

方案1:负号等价替换加法

利用a + b = a - (-b)的数学逻辑,完全规避+运算符,性能最优,无精度损耗:

local A = 12
local B = 0.2
local C = A - (-B)
-- 执行后C的值为12.2

方案2:字符串拼接后转数值

按照字面拼接逻辑,先将浮点数转字符串截取小数部分,和整数拼接后转回数值:

local A = 12
local B = 0.2
local C = tonumber(A .. string.sub(tostring(B), 2))
-- 执行后C的值为12.2

注意:如果浮点数B的整数位不为0,需要先通过math.modf提取纯小数部分再做拼接处理。

内容的提问来源于stack exchange,提问作者W1ll

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.02 17:18:02