Lua变量转数字

Lua变量转数字教程

Lua 中,我们可以将 字符串 类型的 变量 转换成数字类型,这个转换就叫做类型转换。在 Lua 中,将变量转成数字类型,我们可以使用 tonumber 函数。

Lua变量转数字详解

语法

val = tonumber(varname)

参数

参数 描述
varname 需要转换的变量。
val 转换后的值。

说明

将变量 varname 转换为数字类型 val。

案例

字符串转数字

使用 tonumber 将字符串转成数字

#!/usr/bin/lua print("haicoder(www.haicoder.net)\n") a = "100" b = "3.14" print("a =", a, "type(a) =", type(a)) print("b =", b, "type(b) =", type(b)) sa = tonumber(a) sb = tonumber(b) print("sa =", sa, "type(sa) =", type(sa)) print("sb =", sb, "type(sb) =", type(sb))

程序运行后,控制台输出如下:

24_Lua变量转数字.png

首先,我们定义了两个字符串类型的变量 a 和 b,接着我们使用了 tonumber 函数将其转成了数字类型。

布尔类型转数字

使用 tonumber 不可以将布尔转成数字

#!/usr/bin/lua print("haicoder(www.haicoder.net)\n") a = true b = false print("a =", a, "type(a) =", type(a)) print("b =", b, "type(b) =", type(b)) sa = tonumber(a) sb = tonumber(b) print("sa =", sa, "type(sa) =", type(sa)) print("sb =", sb, "type(sb) =", type(sb))

程序运行后,控制台输出如下:

25_Lua变量转数字.png

在 Lua 中,布尔类型不可以转成数字类型。

十六进制字符串转数字

使用 tonumber 可以将十六进制的字符串转成数字

#!/usr/bin/lua print("haicoder(www.haicoder.net)\n") local num1 = tonumber("AF", 16) local num2 = tonumber("0XA") print("num1 =", num1) print("num2 =", num2)

程序运行后,控制台输出如下:

26_Lua变量转数字.png

在 Lua 中,可以使用 tonumber 可以将十六进制的字符串转成数字。

Lua变量转数字总结

在 Lua 中,我们可以字符串类型的变量转换成数字类型,这个转换就叫做类型转换。在 Lua 中,将变量转成数字类型,我们可以使用 tonumber 函数。