如何在Lua中将字符串转换为整数?
我有一个这样的字符串:
a = "10"
我想把它转换成10,这个数字。
如何在Lua中将字符串转换为整数?
我有一个这样的字符串:
a = "10"
我想把它转换成10,这个数字。
当前回答
这是你应该写的
local stringnumber = "10"
local a = tonumber(stringnumber)
print(a + 10)
output:
20
其他回答
更清晰的选择是使用tonumber。
从5.3.2开始,这个函数将自动检测(有符号的)整数、浮点数(如果存在一个点)和十六进制(整数和浮点数,如果字符串以"0x"或"0x"开头)。
以下片段较短,但不相等:
A + 0——由于+的工作方式,强制转换为float。 | 0——(|是位或)强制转换为整数。 ——然而,不像“数学”。Tointeger ',如果失败就会出错。
您可以创建一个访问器,以保持其中的“10”为int 10。
例子:
x = tonumber("10")
如果你输出x变量,它将输出一个int 10而不是"10"
和Python进程一样
X = int("10")
谢谢。
Lua数字类型是双精度类型,在luaconf中实现。H详细说明 一般有两种选择:
[推荐使用]5.3版本的Lua脚本中包含全局变量。Lua文件,其中包括tonumber()和tostring()方法,可以实现数字和字符串的转换。 tointeger()也可以使用此方法将其转换为数字。
但是根据你的实际场景,如果只是为了计算,可以根据这个操作符号来转换Lua。如
s = "1" + 2; -- lua will convert "1" to 1
print(s)
s1 = "e" + 3; -- error
print(s1)
更多关于lua的信息,可以查看lua官方文档
希望对您有用,期待您的回复,期待与您进一步沟通!
使用tonumber函数。如a = tonumber("10")。
可以通过在算术运算中使用字符串(如a= "10" + 0)强制进行隐式转换,但这并不像显式使用tonumber那样清楚或清晰。