如何在 Lua 编程中将字符串转换为 int?
Lua 会进行隐式转换,也称为强制转换,当它注意到你正在尝试使用数字却写了一个字符串时,它就会自动将字符串转换为一个int,这非常有用。
让我们考虑一个简单的例子,我将声明一个字符串变量,然后我将尝试对其进行算术运算,然后一旦 Lua 编译器推断出我们正在尝试将字符串用作int,它将自动将其转换为一个int。
示例
考虑下面所示的示例 −
str = "10" print(type(str)) num = 2 * str print(num) print(type(num))
输出
string 20 number
既然我们知道了自动转换(强制转换),那么学习如何显式进行转换是一个好主意,第一种方法是在字符串值后面追加一个 0,并且该值将被转换为一个整数。
示例
考虑下面所示的示例 −
-- uncommon method str = "100" num = str + 0 print(type(num)) print(num)
输出
number 100
上述方法不是一个很常用的方法,最好使用库函数将字符串转换为数字。
示例
考虑下面所示的示例 −
-- common method str = "100" num = tonumber(str) print(type(num)) print(num)
输出
number 100
广告