zoukankan      html  css  js  c++  java
  • lua 初接触 --- The first time use Lua for programing

      The first time use Lua for programing 

    Wang Xiao 

     

      1. 关于 lua 的变量类型:

        lua 变量的定义与matlab有点不同:

     


     

        local d , f = 5 ,10 --声明局部变量 d,f。

        d , f = 5, 10;  --声明全局变量 d,f。
        d, f = 10        --[[声明全局变量 d,f,其中 f 的值是 nil--]]


        如果只是定义没有初始化,则静态存储变量被隐式初始化为 nil。

      Lua 赋值时会将第一个值赋给第一个变量,第二个值赋给第二个变量,依次类推

      来一个比较叼的交换语句:


        local a,b    -- 变量定义

        a = 10     b = 30

        print("value of a:", a)

        print("value of b:", b)

        b,a = a,b    -- 直接将a and b 对换,有点叼有木有,连中间变量都不需要的。

        print("value of a:", a)

        print("value of b:", b)

        f = 70.0/3.0

        print("value of f", f)


      

      2. 两个需要注意的地方: 

        若想要跳出循环,只要 break 语句即可。

      


      3. 函数的定义:

      --[[ function returning the max between two numbers --]]

      function max(num1, num2)

        if(num1 > num2) then 

          result = num1;

        else

          result = num2;

        end

        return result;

      end

      -- 调用函数

      print("The maximum of the two numbers is", max(10, 4))

      print("The maximum of the two numbers is", max(5, 6))

      -- 执行结果

      The maximum of the two numbers is  10

      The maximum of the two numbers is  6

        在 Lua 中,使用 ... 作为参数可以创建参数个数可变的函数,即: 变参函数。

      

      


      4. 字符串

      string1 = "Lua"

      print(""String 1 is"", string1)

      string2 = 'Tutorial'

      print("String 2 is", string2)

      string3 = [[ "Lua Tutorial" ]]

      print("String 3 is", string3)

      -- the output results

      "String 1" is    Lua

      String 2 is   Tutorial

      String 3 is   "Lua Tutorial"

      

      

      -- the output are:

      Basic formating Lua Tutorial 

      Date formating 02/01/2014

      0.3333

      


      5. 数组:

      Lua 的索引是从1开始的。

       

      多维数组:

      array = {"Lua", "Tutorial"} 

      function elementlterator (collection)

        local index = 0

        local count = #collection

        -- 返回闭包函数

        return function 

          index = index + 1

          if index <= count 

          then 

            -- 返回迭代器的当前元素

            return collection[index]

          end

            end

        end

      for element in elementlterator(array)

      do 

        print(element)

      end


      

      

      

  • 相关阅读:
    有关于CSS的面试题和练习
    Yslow&PageSpeed– 诊断各种缓慢症状
    使用Plant Simulation连接SQL Server
    利用Microsoft Sql Server Management studio 创建数据库的示例
    SQL2008配置管理工具服务显示远程过程调用失败
    用C语言的rand()和srand()产生伪随机数的方法总结
    Fisher–Yates shuffle 洗牌算法(zz)
    Unity3D导入MAX文件的一些问题(zz)
    UG中STP203和STP214的区别
    生产线工序基础知识
  • 原文地址:https://www.cnblogs.com/wangxiaocvpr/p/5538296.html
Copyright © 2011-2022 走看看