local table ={}
--[[ 第一,所有元素之间,总是用逗号","隔开;
第二,所有索引值都需要用"["和"]"括起来;如果是字符串,还可以去掉引号和中括号;
第三,如果不写索引,则索引就会被认为是数字,并按顺序自动从1往后编;
--]]
--[[pairs()可以遍历整个table,即包括数字下标及非数字下表部分。
ipairs()函数用于遍历table中的数字下标部分,而且下标必须从1开始且连续的部分。--]]
-----------------------------------------------------------------------
-- des:字符串分割
-- arg:str-要被分割的字符串 ,char-分割字符
-- log: add by 寒风 2014/11/13
-----------------------------------------------------------------------
function getTabBySplitString(str, char)
if (str == "" or not str or char == "" or not char) then
return
end
local subStrTab = {}
while(true) do
local pos = string.find(str, char)
if (not pos) then
subStrTab[#subStrTab + 1] = str
break
end
local subStr = string.sub(str, 1, pos-1)
subStrTab[#subStrTab + 1] = subStr
local endPos = string.len(str)
str = str.sub(str, pos+1, endPos)
end
return subStrTab
end
===========================================================================
-----------------------------------------------------------------------
-- des:lua的handler
-- arg: handler 将 Lua 对象及其方法包装为一个匿名函数
-- log:
-----------------------------------------------------------------------
-- 函数 = handler(对象, 对象.方法)
local classA = {}
function classA:fun()
self._m = 1 --这里的self等于传入的对象
end
local classB = {}
classA.fun(classB)
print(classA._m) --输出nil
print(classB._m) --输出1
handler(classA,classA.fun)(6) --传入的参数
callback = handler(classA, classA.fun)
callback(6) ---传入的参数
lua总结
最新推荐文章于 2023-09-15 10:10:41 发布