Lua 中有 8 个基本类型

简介: Lua是动态类型语言,变量无需预定义类型。它有8种基本类型:nil、boolean、number、string、userdata、function、thread和table。nil代表无效值,boolean有false和true,number是双精度浮点数,string用引号括起,function指函数,userdata存储C数据,thread用于协程,table是关联数组。`type`函数用于检测值的类型,如`print(type("Hello world"))`将输出"string"。

Lua 数据类型

Lua 是动态类型语言,变量不要类型定义,只需要为变量赋值。 值可以存储在变量中,作为参数传递或结果返回。

Lua 中有 8 个基本类型分别为:nil、boolean、number、string、userdata、function、thread 和 table。

数据类型 描述
nil 这个最简单,只有值nil属于该类,表示一个无效值(在条件表达式中相当于false)。
boolean 包含两个值:false和true。
number 表示双精度类型的实浮点数
string 字符串由一对双引号或单引号来表示
function 由 C 或 Lua 编写的函数
userdata 表示任意存储在变量中的C数据结构
thread 表示执行的独立线路,用于执行协同程序
table Lua 中的表(table)其实是一个"关联数组"(associative arrays),数组的索引可以是数字、字符串或表类型。在 Lua 里,table 的创建是通过"构造表达式"来完成,最简单构造表达式是{},用来创建一个空表。
我们可以使用 type 函数测试给定变量或者值的类型:

实例
print(type("Hello world")) --> string
print(type(10.4*3)) --> number
print(type(print)) --> function
print(type(type)) --> function
print(type(true)) --> boolean
print(type(nil)) --> nil
print(type(type(X))) --> string

相关文章
|
13天前
|
存储 索引
Lua 中有 8 个基本类型
Lua是动态类型的,支持8种基本类型:nil(无效值)、boolean(真或假)、number(双精度浮点数)、string(字符序列)、function(Lua或C编写的函数)、userdata(C数据结构)、thread(协同程序执行线程)及table(关联数组)。使用`type`函数可查询值的具体类型。
|
2天前
|
存储 索引
Lua 中有 8 个基本类型
Lua是动态类型的,无需声明变量类型,值可直接赋给变量。Lua支持8种基本类型:nil(仅nil值,代表无效值)、boolean(true/false)、number(双精度浮点数)、string(字符序列)、function(Lua/C编写的函数)、userdata(C数据结构)、thread(协同程序执行线程)及table(关联数组)。使用`type`函数可检测值的类型。例如:`type("Hello")`返回`string`,`type(nil)`返回`nil`。
|
6天前
|
存储 索引
Lua 中有 8 个基本类型
Lua是动态类型的,无需声明变量类型,值可直接赋给变量。Lua支持8种基本类型:nil(仅nil值,代表无效值)、boolean(true/false)、number(双精度浮点数)、string(字符序列)、function(Lua/C编写的函数)、userdata(C数据结构)、thread(协同程序执行线程)及table(关联数组)。使用`type`函数可检测值的类型。例如:`type("Hello")`返回`string`,`type(nil)`返回`nil`。
|
9天前
|
存储 索引
Lua 中有 8 个基本类型
Lua是动态类型的,无需声明变量类型,值可直接赋给变量。Lua支持8种基本类型:nil(仅nil值,代表无效值)、boolean(true/false)、number(双精度浮点数)、string(字符序列)、function(Lua/C编写的函数)、userdata(C数据结构)、thread(协同程序执行线程)及table(关联数组)。使用`type`函数可查询值的具体类型。
|
15天前
|
存储 索引
Lua 中有 8 个基本类型
Lua是一种动态类型的编程语言,无需显式声明变量类型。它支持八种基本数据类型:`nil`表示无效值;`boolean`包含`true`和`false`;`number`为双精度浮点数;`string`为文本序列;`function`为Lua或C编写的代码块;`userdata`存储C数据结构;`thread`代表协同程序执行路径;`table`为关联数组,可通过构造表达式创建。使用`type`函数可查询值的具体类型。
|
11天前
|
存储 索引
Lua 中有 8 个基本类型
Lua是动态类型的语言,直接为变量赋值即可。它支持8种基本数据类型:`nil`表示无效值;`boolean`包含`true`和`false`;`number`为双精度浮点数;`string`为字符序列;`function`为Lua或C编写的函数;`userdata`存储C数据结构;`thread`表示独立执行路径;`table`为关联数组,可通过构造表达式如`{}`创建。使用`type`函数可查询值的类型。
|
12天前
|
存储 索引
Lua 中有 8 个基本类型
Lua是动态类型语言,变量直接赋值无需声明类型。Lua支持8种基本类型:nil(无效值)、boolean(真或假)、number(双精度浮点数)、string(文本)、function(Lua或C编写的函数)、userdata(C数据结构)、thread(协同程序执行线程)及table(关联数组)。使用`type`函数可查询值的具体类型。
|
17天前
|
存储 索引
Lua 中有 8 个基本类型
Lua是动态类型的,直接赋值即可。Lua有8种基本类型:nil(仅nil值,无效值,在条件中等同false)、boolean(true/false)、number(双精度浮点数)、string(字符序列)、function(Lua/C编写的函数)、userdata(C数据结构)、thread(协同程序执行线程)和table(关联数组)。使用`type`函数可检测值的类型。
|
21天前
|
存储 索引
Lua 中有 8 个基本类型
Lua 是动态类型语言,变量不要类型定义,只需要为变量赋值。 值可以存储在变量中,作为参数传递或结果返回。
|
23天前
|
存储 索引
Lua 中有 8 个基本类型
Lua 中有 8 个基本类型分别为:nil、boolean、number、string、userdata、function、thread 和 table。