Lua认为false和nil为假,true和非nil为真。

要注意的是Lua中 0 为 true

--[  为 true ]
if()
then
print("0 为 true")
end

输出

 为 true

实例

--[ 定义变量 --]
a = --[ 使用 if 语句 --]
if( a < )
then
--[ if 条件为 true 时打印以下信息 --]
print("a 小于 20" )
end
print("a 的值为:"..a)

输出

a 小于
a 的值为:

实例

--[ 定义变量 --]
a = --[ 使用 if 语句 --]
if( a < )
then
--[ if 条件为 true 时打印以下信息 --]
print("a 小于 20" )
end
print("a 的值为:", a)

输出

a 小于
a 的值为:

if...else 语句

实例

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

输出

a 大于
a 的值为 :

if...elseif...else 语句

语法格式

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

实例

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

输出

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

Lua if 嵌套语句

Lua if 嵌套语句语法格式

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

实例

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

输出

a 的值为  ,b 的值为
a 的值为 :
b 的值为 :

lua if 流程控制的更多相关文章

  1. lua 5 流程控制 if

    条件判断中,0 表示 true,只有 nil 才是 false if(0) then -- 可以没有括号 print("0 为 true") elseif 1 then print ...

  2. Lua的五种变量类型、局部变量、全局变量、lua运算符、流程控制if语句_学习笔记02

    Lua的五种变量类型.局部变量.全局变量 .lua运算符 .流程控制if语句 Lua代码的注释方式: --当行注释 --[[    多行注释    ]]-- Lua的5种变量类型: 1.null 表示 ...

  3. Lua学习笔记(2): 流程控制与循环以及初涉迭代器

    条件判断语句 --if...语句 if (表达式) then --表达式为1时执行的语句 end --if...else语句 if (表达式) then --表达式为1时执行的语句 else --表达 ...

  4. Lua学习六----------Lua流程控制

    © 版权声明:本文为博主原创文章,转载请注明出处 Lua流程控制 - 通过程序设定一个或多个条件语句 - 在条件为true时执行指定程序代码,在条件为false时指定其他指定程序代码 - 控制结构语句 ...

  5. node中的流程控制中,co,thunkify为什么return callback()可以做到流程控制?

    前言 我在学习generator ,yield ,co,thunkify的时候,有许多费解的地方,经过了许多的实践,也慢慢学会用,慢慢的理解,前一阵子有个其他项目的同事过来我们项目组学习node,发现 ...

  6. Day1 Python基础学习——概述、基本数据类型、流程控制

    一.Python基础学习 一.编程语言分类 1.简介 机器语言:站在计算机的角度,说计算机能听懂的语言,那就是直接用二进制编程,直接操作硬件 汇编语言:站在计算机的角度,简写的英文标识符取代二进制去编 ...

  7. Lua基础---流程控制语句

    Lua提供了if语句和if else语句作为流程控制语句,当然,符合C的特点,流程语句之间可以实现嵌套操作,当然流程控制也可以和循环体结合进行控制. 1.if语句 if(布尔表达式) then --[ ...

  8. 第10章 Shell编程(4)_流程控制

    5. 流程控制 5.1 if语句 (1)格式: 格式1 格式2 多分支if if [ 条件判断式 ];then #程序 else #程序 fi if [ 条件判断式 ] then #程序 else # ...

  9. Shell命令和流程控制

    Shell命令和流程控制 在shell脚本中可以使用三类命令: 1)Unix 命令: 虽然在shell脚本中可以使用任意的unix命令,但是还是由一些相对更常用的命令.这些命令通常是用来进行文件和文字 ...

随机推荐

  1. tortoiseSVN如何发现和解决冲突?

    版本冲突原因: 假设A.B两个用户都在版本号为100的时候,更新了kingtuns.txt这个文件,A用户在修改完成之后提交kingtuns.txt到服务器,这个时候提交成功,这个时候kingtuns ...

  2. Linux操作系统上ADSL拨号上网的方法详解

    1.安装 yum install rp-pppoe.x86_64 2.配置PPPOE客户端软件 安装完软件包后,必须配置pppoe的配置文件/etc/ppp/pppoe.conf,从而让ADSL拨号时 ...

  3. 常用meta标签及说明

    1.charset   定义文档的字符编码 例如: <meta charset="UTF-8"> 2. name  把 content 属性关联到一个名称,其属性有   ...

  4. C# 生成四位数字字母混合验证码

    private static void Rand() { var arr = new List<string>(); ; i < ; i++) { arr.Add(i.ToStrin ...

  5. iOS定位原理和使用建议(转)

    原文:http://ibbs.91.com/thread-1548870-1-1.html 看到很多网友讨论iOS设备定位的问题,这里将我们所了解的关于iPhone.iPad.iPod等的定位原理做详 ...

  6. java反射获得泛型参数getGenericSuperclass():获取到父类泛型的类型

    public class Person<T> { } import java.lang.reflect.ParameterizedType; import java.lang.reflec ...

  7. cookie、session、sessionid ,jsessionid 的区别

    本文是转载虫师博客的文章http://www.cnblogs.com/fnng/archive/2012/08/14/2637279.html cookie.session.sessionid 与js ...

  8. Singapore retailer will release this adidas NMD R1

    Select spots are restocking the adidas NMD Singapore this Friday, Feb 24th featuring three different ...

  9. Qt 引用头文件 QT_BEGIN_NAMESPACE QT_END_NAMESPACE

    Qt里面引入头文件的两种方式: 1. #include <QMdiArea> #include<QSplashScreen> 2. QT_BEGIN_NAMESPACE cla ...

  10. curl基本使用

    curl简介 linux curl是一个利用URL规则在命令行下工作的文件传输工具.它支持文件的上传和下载. curl可以使用URL的语法模拟浏览器来传输数据,因为它是模拟浏览器,因此它同样支持多种协 ...