lua程序设计之补充知识

1  局部变量和代码块

    Lua语言中的变量在默认情况下是全局变量,所有的局部变量在使用前必须声明。

    局部变量的生效范围仅限于声明它的代码块。

    x = 10                -- x 为全部变量
    local i = 1           -- i 为局部变量

    有些人认为,在代码段的中间位置声明变量是一个不好的习惯,实际上恰恰相反:

    1、在需要时才声明变量可以避免漏掉初始化这个变量;

    2、通过缩小变量的作用域还有助于提高代码的可读性。

2  控制结构

    特别注意:lua语言将所有不是 false 和 nil 的值都当作真(0和空字符串也当作真)。

2.1  if then else

示例:

if exp1 then
    something
elseif exp2 then
    something
else exp3 then
    something
end

    由于lua语言不支持switch语句,所以一连串的else-if语句会比较常见。

2.2  while

示例:

while exp do
    something
end

2.3  repeat

示例:

repeat
    something
until exp

   lua语言中,循环体内声明的变量的作用域包括测试条件。

2.4  数值型for

示例:

for var = exp1,exp2,exp3 do
    something
end

    循环中,var由exp1变化到exp2,exp3表示步长(可选)。如果不想给循环设置上限,可以使用常量math.huge。

    for循环的一些细节:

    1、在循环开始前,三个循环表达式都会运行一次;

    2、控制变量是被for语句自动声明的局部变量,其作用范围仅限于循环体内;

    3、不要改变控制变量的值,否则可能产生不可预知的结果。

2.5  泛型for

    此处省略,后续章节补充。

3  break、return 和 goto

    break 语句:结束循环,该语句会中断包含它的内层循环,中断后,程序会接着被中断的循环继续执行。不可以在循环体外使用break。

    return 语句:返回函数的执行结果或简单地结束函数的运行。所有函数的最后都有一个隐含的return语句。

                        特别注意:return语句必须是代码块的最后一句。否则会产生难以预料的结果。

    goto 语句:略……

 

 


版权声明:本文为weixin_44928892原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。