变量的名称可以由字母,数字和下划线字符组成。它必须以字母或下划线开头,由于Lua区分大小写,因此大写和小写字母是不同的。
在Lua中,尽管无涯教程没有变量数据类型,但是根据变量的范围有三种类型。
全局变量(Global) - 除非明确声明为局部变量,否则所有变量均视为全局变量。
局部变量(Local) - 当将类型指定为变量的局部变量时,其范围受函数限制。
Table字段 - 这是一种特殊类型的变量,可以容纳除nil以外的任何变量,包括函数。
Lua 变量定义
变量定义意味着告诉解释器在哪里以及为变量创建多少存储空间,变量定义具有可选类型,并包含一个或多个该类型变量的列表,如下所示:
type variable_list;
在这里, type 可以是局部的,也可以是指定的类型,使其成为全局的,而 variable_list 可以由一个或多个用逗号分隔的标识符名称组成。
local i, j local i local a,c
local i,j 行同时声明并定义了变量i和j;它指示解释器创建名为i,j的变量,并将范围限制为局部。
变量可以在其声明中进行初始化。初始化程序由一个等号和一个常量表达式组成,如下所示:
type variable_list=value_list;
一些示例是-
local d , f=5 ,10 --declaration of d and f as local variables. d , f=5, 10; --declaration of d and f as global variables. d, f=10 --[[declaration of d and f as global variables. Here value of f is nil --]]
Lua 变量声明
如您在上面的示例中看到的,多个变量的分配遵循variable_list和value_list格式。在上面的示例 local d,f=5,10 中,无涯教程在variable_list中具有d和f,在值列表中具有5和10。
Lua中的值分配就像在variable_list中的第一个变量与value_list中的第一个值一样进行,依此类推。因此,d的值为5,f的值为10。
请尝试以下示例,其中变量已在顶部声明,但已在主函数中定义和初始化了变量-
-- Variable definition: local a, b-- Initialization a=10 b=30print("value of a:", a)print("value of b:", b)-- Swapping of variables b, a=a, bprint("value of a:", a)print("value of b:", b)f=70.0/3.0 print("value of f", f)
构建并执行上述代码后,将产生以下输出-
value of a: 10 value of b: 30 value of a: 30 value of b: 10 value of f 23.333333333333
Lua - 变量声明 - 无涯教程网无涯教程网提供变量的名称可以由字母,数字和下划线字符组成。它必须以字母或下划线开头,由于Lua区...https://www.learnfk.com/lua/lua-variables.html