zoukankan      html  css  js  c++  java
  • Lua学习---Lua的控制结构

    前言

      由于之前有c/c++、javascript基础,所以学Lua的时候喜欢拿来和前面的语言比较,这里主要和C比较

    1.if...else

      Lua的if语句格式:

    if  条件 then
     条件成立,运行的程序块
    else
     条件失败,运行的程序块
    end
    

      Lua没有大括号来表明程序块,所以,后面要加上end来表明if语句已经结束,同样,嵌套if时,通过elseif和else  if来区分

    2.while

      格式:

    while  表达式 do
     --body
    end
    

    注意:Lua并没有像其他语言那样提供类似continue这样的控制语句来立即进入下一个循环。

    3.repeat

      repeat类似C语言的do--while,但是repeat是先执行循环体,直到条件为真,而C语言,是知道条件为假

    x  = 10
    repeat
        print(x)
    until  false    //死循环

    4.for

      for语句有两种形式:数字for和范性for

      1)数字for

    for var = begin, finish, step do
    --body
    end
    

    var从begin变化到finish,每次变化都以step作为步长递增var,并执行一次执行体。step是可选的,若不指定,默认为1

    for i =1,5 do
    		print(i)
    end
    --	output:
    1
    2
    3
    4
    5
    

      如果不想给循环设置上限的话,可以使用常量math.huge

    for i=	1,math.huge	do
      if(0.3*i^3 - 20*i^2 - 500 >=0) then print(i) break   end end

      2)范型for

      泛型for通过一个迭代器(iterator)函数来遍历所有值

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

      

    --	打印数组a的所有值
    local	a = {"a", "b", "c", "d"}
    for i, v in ipairs(a) do
     print("index:", i, "	value:", v)
    end
    --	output:
    index:	1 value: a
    index:	2 value: b
    index:	3 value: c
    index:	4 value: d
    

    5.break,return

      break用来终止while,repeat和for三种循环的执行,并跳出当前的循环。

      return主要用于从函数中返回结果。

      

      

  • 相关阅读:
    python Matplotlib数据可视化神器安装与基本应用
    linux笔记
    appium自动化环境搭建
    C#实现局域网聊天 通讯 Socket TCP 多人
    layui 关闭弹出层方法
    allure生成漂亮的测试报告
    python内置测试框架unittest
    Python安全编程
    Python Web自动化测试
    Docker从入门到放弃
  • 原文地址:https://www.cnblogs.com/y-yxh/p/6250130.html
Copyright © 2011-2022 走看看