2024-12-12 08:00:06

Lua字符串到int

如何在Lua中将字符串转换为整数?

我有一个这样的字符串:

a = "10"

我想把它转换成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官方文档

希望对您有用,期待您的回复,期待与您进一步沟通!

其他回答

这是你应该写的

local stringnumber = "10"
local a = tonumber(stringnumber)
print(a + 10)

output:

20

可以通过在算术运算中使用字符串(如a= "10" + 0)强制进行隐式转换,但这并不像显式使用tonumber那样清楚或清晰。

您可以创建一个访问器,以保持其中的“10”为int 10。

例子:

x = tonumber("10")

如果你输出x变量,它将输出一个int 10而不是"10"

和Python进程一样

X = int("10")

谢谢。

Lua 5.3.1  Copyright (C) 1994-2015 Lua.org, PUC-Rio
> math.floor("10");
10
> tonumber("10");
10
> "10" + 0;
10.0
> "10" | 0;
10

假设你想转化为数字的字符串在变量S中

a=tonumber(S)

如果S中有数字且只有数字,它将返回一个数字, 但如果有任何字符不是数字(浮点数的句点除外) 它会返回nil