• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

Lua 流程控制

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

    Lua编程语言流程控制语句通过程序设定一个或多个条件语句来设定。在条件为true时执行指定程序代码,在条件为false时执行其他指定代码。

   下图是典型的流程控制流程图:


   控制结构的条件表达式结果可以是任何值,Lua认为false和nil为假,true和非nil为真。

   要注意的是Lua中 0 为 true:

--[ 0  true ]
if(0)
then
    print("0 为 true")
end
   以上代码输出结果为:

0  true
   Lua 提供了以下控制结构语句:

语句 描述
if 语句 if 语句 由一个布尔表达式作为条件判断,其后紧跟其他语句组成。
if...else 语句 if 语句 可以与 else 语句搭配使用, 在 if 条件表达式为 false 时执行 else 语句代码。
if 嵌套语句 你可以在if 或 else if中使用一个或多个 if 或 else if 语句 。

if语句

if(布尔表达式)
then
   --[ 在布尔表达式为 true 时执行的语句 --]
end
    在布尔表达式为 true 时会if中的代码块会被执行,在布尔表达式为 false 时,紧跟在 if 语句 end 之后的代码会被执行。Lua认为false和nil为假,true 和非nil为真。要注意的是Lua中 0 为 true。

    if 语句流程图如下:



实例

--[ 定义变量 --]
a = 10;

--[ 使用 if 语句 --]
if( a < 20 )
then
   --[ if 条件为 true 时打印以下信息 --]
   print("a 小于 20" );
end
print("a 的值为:", a);
   执行结果为:

a 小于 20
a 的值为:    10

if...else 语句

if(布尔表达式)
then
   --[ 布尔表达式为 true 时执行该语句块 --]
else
   --[ 布尔表达式为 false 时执行该语句块 --]
end
   在布尔表达式为 true 时会if中的代码块会被执行,在布尔表达式为 false 时,else 的代码块会被执行。Lua认为false和nil为假,true 和非nil为真。要注意的是Lua中 0 为 true。

   if 语句流程图如下:


实例

--[ 定义变量 --]
a = 100;
--[ 检查条件 --]
if( a < 20 )
then
   --[ if 条件为 true 时执行该语句块 --]
   print("a 小于 20" )
else
   --[ if 条件为 false 时执行该语句块 --]
   print("a 大于 20" )
end
print("a 的值为 :", a)

   执行结果:

a 大于 20
a 的值为 :    100


if...elseif...else 语句

f( 布尔表达式 1)
then
   --[ 在布尔表达式 1  true 时执行该语句块 --]

elseif( 布尔表达式 2)
then
   --[ 在布尔表达式 2  true 时执行该语句块 --]

elseif( 布尔表达式 3)
then
   --[ 在布尔表达式 3  true 时执行该语句块 --]
else 
   --[ 如果以上布尔表达式都不为 true 则执行该语句块 --]
end

实例

--[ 定义变量 --]
a = 100

--[ 检查布尔条件 --]
if( a == 10 )
then
   --[ 如果条件为 true 打印以下信息 --]
   print("a 的值为 10" )
elseif( a == 20 )
then   
   --[ if else if 条件为 true 时打印以下信息 --]
   print("a 的值为 20" )
elseif( a == 30 )
then
   --[ if else if condition 条件为 true 时打印以下信息 --]
   print("a 的值为 30" )
else
   --[ 以上条件语句没有一个为 true 时打印以下信息 --]
   print("没有匹配 a 的值" )
end
print("a 的真实值为: ", a )

   以上代码执行结果如下:

没有匹配 a 的值
a 的真实值为:     100

if 嵌套语句

if( 布尔表达式 1)
then
   --[ 布尔表达式 1  true 时执行该语句块 --]
   if(布尔表达式 2)
   then
      --[ 布尔表达式 2  true 时执行该语句块 --]
   end
end


实例

--[ 定义变量 --]
a = 100;
b = 200;

--[ 检查条件 --]
if( a == 100 )
then
   --[ if 条件为 true 时执行以下 if 条件判断 --]
   if( b == 200 )
   then
      --[ if 条件为 true 时执行该语句块 --]
      print("a 的值为 100 b 的值为 200" );
   end
end
print("a 的值为 :", a );
print("b 的值为 :", b );

以上代码执行结果如下:

a 的值为 100 b 的值为 200
a 的值为 :    100
b 的值为 :    200



鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
lua常用api发布时间:2022-07-22
下一篇:
cocos2dx资源和脚本加密quick-lua3.3final发布时间:2022-07-22
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap