Lua入门

来源:互联网 发布:新闻网站数据采集系统 编辑:程序博客网 时间:2024/05/17 02:37

http://luabinaries.sourceforge.net/  下载lua最新版本

解压到任意目录,在当前目录下创建test.lua脚本

lua中的注释   -- 单行注释    --[[多行注释]]

多变量赋值  a,b=1,3

lua中的变量无需定义类型.例如  a=123  b="hello world"   c=true    print(a,b,c) 在一行内打印

lua中的数组和集合都属于table类型

从下标1开始,而且不需要预定义长度  例如

数组 a={1,2,3,4,5}  print(a[1],a[2],a[3])    

集合map  a={}

a["hello"]=2

a[5]=false

print(a.hello,a[5])


函数支持多返回值(和scala一样)

function sub(a,b)

   return a+b,a-b

end


逻辑表达式  true = not false

字符串拼接  print("hello".."world")   用 ..进行拼接

local a = 1    local代表局部变量.此变量只在方法内有效,并且用local有利于性能优化,在编译期就会执行计算

逻辑表达

if  function()  then

print("1")

elseif function() then

print("2")

else

print("3")

end

while循环

local i =0

while i<10  do

print(i)  i=i+1

end

for循环   1表示起始值,10表示最终值,2表示每次加2.不写默认加1

for i=1,10,2 do

print(i)

end


泛型遍历        pairs迭代器,每次迭代出来的顺序都是变化的   ipairs迭代器,只能迭代出table中的数组

a={["hello"]=1,[100]=true}

for k.v in pairs(a) do

print(k,v)

end


如何加载其他的lua脚本  require 只调用一次  dofile加载多次并执行,这些相当于java中的import

local Mx = require("脚本名称")   Mx.add(1,2)   


内置函数库  table

遍历table可以看到很多函数   insert,remove.......


计算长度,用#  只能得出字符串或者数组的长度,对集合没办法计算\

判断对象类型  print(type(a)).  能得出对象是什么类型  string table number boolean...

字符串与数字转换 tonumber()  tostring()

0 0
原创粉丝点击