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

Lua学习笔记1,基本数据类型

时间:2017-01-12 08:35:12      阅读:173      评论:0      收藏:0      [点我收藏+]

标签:bool   range   ble   声明   boolean   type   null   符号   总结   

1.字符串的连接使用的是  .. ,如

print(123 .. 44)

输出 12344

print (‘a‘ .. ‘b‘)

输出 ab

print(123 .. 44)这句的时候 .. 两边要空格

2. lua注释符号

单行   --

多行

--[[

此处是注释

--]]

3. 字符串块

stringblock=[[

this is a string

block

]]

4. 空类型  nil 相当于NULL,如果一个变量未赋值,那么其值为 nil,且在条件语句中 nil值为 false,例如

if nil then

  print(‘nil‘)

else

  print(‘nil is false‘)

end

输出 

nil is false

5. # 放在字符串前面可以计算字符串长度

str1 = "this is a string"

print(#str1)

输出

16

6. table数据类型

这个类型蛮有意思的,表示的是关联数组,有点类似于字典结构,数字和字符串都可以作为索引

a={}  --空table

a["key"]=‘value‘

a[10]=22

for k,v in pairs(a) do

  print( k ..":".. v)

end

输出

key : value
10 : 33

这里pairs()是函数,可以用print(type(pairs))查看,具体用法未明。。。后面再看

 

另外,table的默认索引是从1开始的

tbl = {"apple", "pear", "orange", "grape"}
for key, val in pairs(tbl) do
    print("Key", key)
end
输出
Key 1
Key 2
Key 3
Key 4

table没有固定长度,也不用预先声明其大小,没有初始化的table都是nil

7. function类型
这个类型好爽,和matlab里面的function很类似,首先function可以类似于应用传递,其次function可以直接作为函数参数传递

function fibonaccia(n)
  if n == 0 or n==1 then
    return 1
  else
    return fibonaccia(n-1)+fibonaccia(n-2)
  end
end
print(fibonaccia(10))
fib=fibonaccia
print(fib(10))
function funcpass(tab,fun)
  for k,v in pairs(tab) do
    print(fun(v))
  end
end
tab={1,2,3,4,5}
funcpass(tab,fib)

总结:Lua有8种基本的数据类型:nil,number,string,table,function,boolean,thread,userdata

Lua学习笔记1,基本数据类型

标签:bool   range   ble   声明   boolean   type   null   符号   总结   

原文地址:http://www.cnblogs.com/YiXiaoZhou/p/6274348.html

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