码迷,mamicode.com
首页 > 其他好文 > 详细

Lua编程入门-学习笔记1

时间:2015-11-15 23:22:04      阅读:237      评论:0      收藏:0      [点我收藏+]

标签:

第1章:起点

Chunks: 语句块

每个语句结尾的分号是可选的,如果同一行有多个语句最好使用分号分隔;

dofile("lib1.lua")  -- 执行lua文件

全局变量:局部变量用local修饰,否则就是全局变量

保留字:

        if then else elseif end

        and or not

        fuction return end

        true false nil

        while ... do .. end    break

        repeat ... until ...

        for ... in ... do ... end

        local

 

注释:单行 --

         多行 --[[ XXX  --]]

命令行: lua [option] [script [args]]

       -e: 直接传入命令,如:lua -e "print(math.sin(12))"

       -l: 加载文件,如:lua -la -lb,执行a.lua和b.lua文件

       -i: 交互模式,

 

第2章 类型和值

8个基本类型: nil\boolean\number\string\userdata\function\thread\table

通过type()获取类型

转义字符: \[  \]

 

第3章 表达式

算术运算符

      二元运算符: + - * / ^ (加减乘除幂)

      一元运算符: -

关系运算符

       <  >  <=  >=  ==  ~=

       nil只和自己相等

逻辑运算符

        and or not

        a ? b : c

连接运算符

         ..    -> string

{}   => days = {"sunday", "monday"}

            days[1]  索引从1开始!!!

a = {x=0, y=1}   <=>  a={}; a.x=0; a.y=1  <=>  {["x"]=0, ["y"]=1}

{"red", "green", "blue"}    <=>  {[1]="red", [2]="green", [3]="blue"}

不推荐数组下标从0开始,否则很多标准库不能使用

 

第4章 基本语法

赋值语句:  x,y = y,x

do ... end   <=>  C++的{}

循环语句:

while condition do

     statements

end

repeat

     statements

until conditions;

for var=exp1, exp2, exp3 do  --注意:exp1,exp2,exp3只会计算一次!!!

    loop-part

end 

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

 

第5章 函数

 调用函数的时候,如果参数列表为空,必须使用()表明是函数调用,当函数只有一个参数并且这个参数是字符串或者表构造的时候,()可有可无。

Lua函数实参和形参的匹配与赋值语句类似,多余部分被忽略,缺少部分用nil补足

特殊函数unpack,数组作为参数返回数组的每个元素

可变参数:  func(...)

    Lua将函数的可变参数放在一个叫arg的表中,除了参数以外,arg表中还有一个域n表示参数的个数

哑元变量:  _

local _, x = string.find(s, p)

命名参数:

rename(old="temp.lua", new="temp1.lua")

Lua编程入门-学习笔记1

标签:

原文地址:http://www.cnblogs.com/through/p/4967503.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!