如何将两个变量连接起来

在我的 Lua 代码中,我需要执行一个操作,允许我将两个变量(一个整数和一个浮点数)连接起来,但不使用 Adds (+) 运算符。我该如何获得这个结果?

local A = 12
local B = 0.2
local C = A ???? B
C = 12.2

原文链接 https://stackoverflow.com/questions/69292127

点赞
stackoverflow用户9676887
stackoverflow用户9676887

你可以通过将“0.0”添加到整数值来将其转换为浮点数来解决,就像以下示例一样:

local A = 12 + 0.0
local B = 0.2
local C = A + B

print(C)
2021-09-22 23:04:41
stackoverflow用户16835308
stackoverflow用户16835308

你可以通过从B中移除小数点,然后使用string.format()连接AB,最后使用tonumber()将生成的字符串转换为数字来实现这一点:

local A = 12
local B = 0.2
local C = tonumber(string.format("%d.%d", A, B*10))

print(C) --> 12.2

编辑: 如果小数点后有任意数量的数字,可以使用此函数将其删除:

function remove_decimal_point(n)
    while n % 1 ~= 0 do
        n = n * 10
    end
    return n
end

然后,

local A = 12
local B = 0.2
local C = tonumber(string.format("%d.%d", A, remove_decimal_point(B)))

print(C) --> 12.2
2021-09-23 00:04:01