zoukankan      html  css  js  c++  java
  • Lua学习(3)——控制结构

    Lua提供了一组传统的,小巧的控制结构,包括用于条件执行的if,用于迭代的while、repeat和for。所有的控制结构都有一个现实的终止符号:if for while 都以end结尾,repeat以until作为结尾。

    控制结构中的条件表达式可以使任何的值,Lua将所有false和nil的值视为“真”。

    1. if then else语句

    if a<0 then 
        a=0
    end
    
    if a<b then 
        return a
    else 
        return b
    end
    

     嵌套的if,可以使用elseif

    if op=="+" then
        r = a+b;
    elseif op=="-" then
        r = a-b;
    elseif op=="*" then
        r = a*b;
    elseif op=="/" then
        r = a/b;
    else
         error("invalid operation")
    end
    

    2. while

    i =1
    while i<10 do
        print(i)
        i=1+1;
    end
    

    3. repeat until

    until 条件为真

    repeat
      print(i)
      i=i+1 until i >10

    4. 数字型for循环

    语法

    for exp1, exp2, exp3 do
       <code> 
    do
    
    exp1初始值,exp2终止值,exp3是步长。步长exp3 默认是1
    
    for i=1,10,2 do
            print(i)
    end
    
    for i=1,10 do
            print(i)
    end
    

    和C、C++一样也有break语句,终止用math.huge

    for i=1,math.huge do
      if i>5 then
            break
        end
        print(i)
    end    
    

    4. 泛型for循环

    for i,v in ipairs(tb) do
    print(v)
    end
    

     Lua的基础库提供了ipairs,这是一个用于用于数组的迭代的函数。每次循环,i会被赋予一个索引的值,同时v被赋予一个对应该索引的数组元素值。

  • 相关阅读:
    [Sql Server 转载]
    [C#][收集整理]
    [Sql Server][原创]
    [Sql Server][原创]
    [Sql Server][原创]
    C#代码验证sql语句是否正确(只验证不执行sql)的方法
    [Sql Server][转载] 数据库表的基本信息,你真的都了解吗?
    [Sql Server][原创] 常用 Sql 查询
    LocalProxy
    通过字符串引入模块下的属性
  • 原文地址:https://www.cnblogs.com/oldtrafford/p/3817229.html
Copyright © 2011-2022 走看看