Lua学习笔记
2017-11-23 13:14
316 查看
学习lua的编程笔记:
--[[ print("Hello World") print(b) b = 10 print(b) b = nil print(b) --]] --[[ 注释 --]] --[[ 数据类型: nil boolean number string function userdata thread table(lua中的表) --]] --[[ print(type(nil)) print(type("cch")) print(type(2.21)) print(type(true)) print(type(print)) --]] --[[ tab1 = {key1 = "cch",key2 = 2.22} print(type(tab1.key1)) tab1.key2 = nil print(type(tab1.key2)) --]] --[[ if nil then print("nil为true") else print("nil为false") end --number print(type("2"++"6")); --string ".."两个点表示连接字符串 print(type("2".."6")); str = "this is a string" print(str) print(html) print(#str) print(#html) --]] --[[ tab1 = {key = 123,key2 = "abc"} tab2 = {"434",123,"abc"} for key,val in pairs(tab1) do print(key..":"..val) end for key,val in pairs(tab2) do print(key..":"..val) end for key,val in pairs(tab2) do print(type(val)) end tab2[2] = nil for i = 1,5 do print(tab2[i]) end tab2[2] = 343 tab2["abc"] = "ABC" tab2.cch = "oop" for k,v in pairs(tab2) do print(k..":"..v) end function Sum(n) sum = 0 for i = 1,n do sum=sum+i; end return sum end print(Sum(10)) print( function() return 12 end ) a = 2 print(type(a)) a = "2" print(type(a)) function fun() p1 = 2 local p2 = 3 end fun() print(p1) print(p2) a,b,c = 10,"cch",true print(type(a),type(b),type(c)) a,b,c = c,a,b print(a,b,c) print(a) i = 0 while i<=20 do if i%2==0 then print(i) end i=i+1 end tab = {"a","b",34,54,56} for key,val in pairs(tab) do print(key.." "..val) end a = 1 repeat print(a) a=a+1 until a>=10 function grade(a) local result = nil if a<0 then result = "分数不能小于0分" elseif a<60 then result = "不及格" elseif a<80 then result = "及格" elseif a<100 then result = "优秀" elseif a==100 then result = "满分" else result = "分数不能大于100分" end return result end print(grade(103)) max = function(...) local arg = {...} local maxNum = 0 for key,val in pairs(arg) do if val>maxNum then maxNum = val end end return maxNum,#arg end print(max(12,45,2,78,32)) function Sum(...) local sum = 0 for key,val in pair bda8 s(arg) do sum = sum + val; end return sum-#arg end print(Sum(1,2)) print(2==2) --true print(2~=3) --true print(#"cchoop") if 3<3 or 4>2 then print("or") end if not false then print("not") end if 3==3 and 2==2 then print("and") end str = "hello \n world"; str1 = "ABC" print(str); -- string.upper(str) 改大写 print(string.upper(str)) -- string.lower(str) 改小写 print(string.lower(str1)) -- string.gsub(str,findStr,replaceStr,replaceNum) print(string.gsub(str,"l","替换",10)) -- string.reverse(str) 翻转 print(string.reverse(str)) -- string.format(str,...) 格式化 print(string.format("%d + %d result is %d",4,5,4+5)) -- string.rep(str,repNum) 拷贝 print(string.rep(str,5)) -- string.len(str) 长度 print(string.len(str)) -- 字符串拆分 function StrSplit(inputstr, sep) if sep == nil then sep = "%s" end local t={} local i=1 for str in string.gmatch(inputstr, "([^"..sep.."]+)") do t[i] = str i = i + 1 end return t end print(#StrSplit("2,3,4,5",",")) -- string.find(str,findStr,StrIndex) print(string.find("I am a boy","am",1)) -- table.concat(tab) 表连接 tab = {"zun","apple","fruit","orange","oil"} print(table.concat(tab)) print(table.concat(tab,",")) print(table.concat(tab,",",3,4)) print(table.concat(tab,"",1,4)) print(#tab) -- table.insert(str,strInsert) 插入 table.insert(tab,6,"abc") print(#tab,tab[5]) -- table.remove(str,strRemove) 删除 table.remove(tab) print(#tab) -- table.sort(tab) 排序 for k,v in pairs(tab) do print(v) end table.sort(tab) for k,v in pairs(tab) do print(v) end --]] --协同 --[[ add = coroutine.create( function(a,b) print(a+b) print(a+b) print(a+b) coroutine.yield(a*b) print(a+b) return a+b; end ) print(coroutine.resume(add,20,30)) print("---------------------------") print(coroutine.resume(add)) file = io.open("C:\\Users\\yue\\Desktop\\unity招聘.txt","r") io.input(file) str= io.read() while str do print(str) str = io.read() end repeat print(io.read()) until not io.read() io.close(file) file = io.open("C:\\Users\\yue\\Desktop\\123.txt","w") io.output(file) for i = 1,10,2 do io.write("cchoop".."\n") end io.close(file) file = io.open("C:\\Users\\yue\\Desktop\\123.txt","r") io.input(file) --print(io.read("*a")) --print(io.read("*l")) 默认 --print(io.read("*n")) --print(io.read(11)) io.close(file) function PingFang(maxNum,minNum) if minNum < maxNum then minNum = minNum+1 return minNum,minNum*minNum end end for i,n in PingFang,10,1 do print(i.."的平方数是"..n) end --]]
相关文章推荐
- lua本学习笔记功能
- 11.lua学习笔记:元表与元方法
- lua学习笔记之一(C/C++程序员的Lua快速入门[初阶话题])
- Lua学习笔记(一)
- Lua学习笔记七——lua也面向对象
- Lua学习笔记之 Type and Values
- 【lua学习笔记】第二章:类型和值
- LUA学习笔记(一)---LUA变量和循环语法学习
- Lua学习笔记之 Type and Values
- Lua学习笔记--C调用Lua
- cocos-lua学习笔记(七)场景迁移及迁移动画
- LUA学习笔记--基本函数库
- LUA一些零散的学习笔记
- lua学习笔记(1)
- Lua 学习笔记(七) —— 协同程序(一)
- Lua学习笔记4. coroutine协同程序和文件I/O、错误处理
- lua学习笔记——文件I/O
- Lua 5.1 学习笔记
- lua学习笔记---运算符
- lua学习笔记2