Lua学习笔记1,基本数据类型
2017-01-11 16:56
405 查看
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学习笔记_注释、基本数据类型、if语句
- lua学习笔记一 -- 基本数据类型和操作符介绍
- Visual C++ 学习笔记( 二 ) 基本数据类型与输入输出 (转rockybug)
- [LUA学习笔记04]Lua语法--数据类型
- OpenCV学习笔记 -- 基本数据类型
- Java学习笔记四。设计模式、基本数据类型、包装类、异常、断言、包、访问权限、命名规范、jar
- J2SE学习笔记3 — Java基本语法(2)基本数据类型
- Python源码学习笔记(1 基本数据类型)
- 嵌入式开发之C基础学习笔记03--基本数据类型,操作符,修饰符等基本概念
- JAVA学习笔记(2)基本数据类型和基本操作
- Javascript学习笔记一基本数据类型与变量声明
- 我的php学习笔记(二)php基本数据类型、基本语法和基本运算类型及其应用
- C++ Primer 学习笔记--基本概念和数据类型
- C语言学习笔记之基本数据类型
- Java基础学习笔记(一)基本数据类型
- Java学习笔记---2.Java标识符和基本数据类型
- Javascript学习笔记1-基本数据类型
- php学习笔记(3):PHP基本语法和数据类型:
- 【windows 】编程基本数据类型(学习笔记)
- OpenCV学习笔记(一)—OpenCV的基本数据类型和矩阵