Lua2

--回調(diào)方法的寫法

--[[function Add(_a,_b,_callback)

--body

sum =_a+_b;

if _callback then

print("進(jìn)入回調(diào)...")

_callback(sum)

end

end

function Callback ( _callbackValue )

-- body

print(_callbackValue)

end

Add(10,20,Callback)

--集合、表結(jié)構(gòu)的訪問

pairs可以遍歷表中所有的key,并且除了迭代器本身以及遍歷表本身還可以返回nil;

但是ipairs則不能返回nil,只能返回數(shù)字0,如果遇到nil則退出。它只能遍歷到表中出現(xiàn)的第一個不是整數(shù)的key

student={

name="張三",

age=25,

address="成都"

}

for i,v in pairs(student) do

print(i,v)

end

array={1,3,5,7,9}

for i,v in ipairs(array) do

print(i,v)

end

for key,value in pairs(student) do

print(key,value)

end

--混合表的定義

custom_table={

"value6",

key1="value1",

key2="value2",

"value3",

"value4",

"value5",

1,

10,

function ()

-- body

print("方法1")

end

}

--table.insert(表,"值")方法

--table.insert(表,index,"值")方法

table.insert(custom_table,8,"insert value")

print("混合表的輸出-----")

for k,v in pairs(custom_table) do

print(k,v)

end

--custom_table[7]()

--鏈接表

--table.concat(表1,表2)

custom_table2={10,20,30}

custom_table2_concat=table.concat(custom_table2,":" ,1,3)

print(custom_table2_concat)

print(type(custom_table2))

function PrintArray( arr )

-- body

print("數(shù)組輸出-----")

for k,v in pairs(arr) do

print(v)

end

end

--排序

array_table = {1,89,23,43,10,43}

table.sort(array_table)

PrintArray(array_table)

--復(fù)雜排序(自定義排序方法)

array_table={

key1="value1",

key3="value2",

key2="vlaue3",

10,

5,

20

}

table.sort(array_table)

PrintArray(array_table)

Student={

name="張三",

age=25

}

function Student.PrintInfo( ... )

-- body

print("姓名:"..Student.name.."? 年齡:"..Student.age)

end

]]

--Student.PrintInfo()

--[[a=Student

Student=nil

a.PrintInfo(a)

]]

--[[function Student:PrintInfo( ... )

-- body

print(self.name..":"..self.age)

end

Student:PrintInfo()

]]

--[[t={ }

meta=getmetatable(t)

print(meta)

local _mt ={name1="name",name2="name2"}

_index=function ( _table,key)

-- body

end

--為一個表添加元表

setmetatable(t,_mt)

meta=getmetatable(t)

print(meta)

print(t.name1)

]]

--[[Student={}

Student.default={

num=0,

name="",

age=20

}

Student._mt={}

Student.new=function (o)

-- body

setmetatable(o,Student._mt)

return o

end

Student._mt.__index=function(table,key)

return Student.default[key]

end

Student._mt.__newindex=function ( )

-- body

print("哈哈哈")

end

stu1=Student.new({name="張三",age=25,num=1})

print(stu1.name)

stu2=Student.new({name="張",num=2})

print(stu2.name,stu2.age)

stu2.address="北京"

print(stu2.address)

]]

--[[Student={

name1="李四",

no=1,

age=25

}

function Student:new ()

-- body

local o ={}

setmetatable(o,self)

self.__index=self

print(self)

return o

end

function Student:PrintInfo(? )

-- body

print(self)

print("姓名: "..self.name1.." 年齡: "..self.age)

end

stu1= Student:new()

print(stu1.name1)

print(stu1.age)

stu2 = Student:new ()

stu2.name1="張三"

print(stu1.name1)

print(stu2.name1)

stu1:PrintInfo()

stu2:PrintInfo()

]]

--[[Hero={

name="",

attack=0,

hp=0,

mp=0

}

function Hero:CreatInstance(_name,_atk,_hp,_mp )

-- body

local o={}

setmetatable(o,self)

self.__index=self

self.name=_name

self.attack=_atk

self.hp=_hp

self.mp=_mp

return o

end

function? Hero:Attack()

-- body

print(self.name.."開始攻擊")

end

h=Hero:CreatInstance("幽鬼",100,250,100)

h:Attack()

print(h.attack)

--Player類繼承Hero

Player =Hero:CreatInstance()

function Player:Attack(? )

-- body

print("Player_"..self.name.."開始攻擊,傷害值為"..self.attack)

end

p1=Player:CreatInstance("player幽鬼",3000,3000,10000)

p1:Attack()

]]

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 230,247評論 6 543
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 99,520評論 3 429
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 178,362評論 0 383
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經(jīng)常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 63,805評論 1 317
  • 正文 為了忘掉前任,我火速辦了婚禮,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 72,541評論 6 412
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 55,896評論 1 328
  • 那天,我揣著相機(jī)與錄音,去河邊找鬼。 笑死,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,887評論 3 447
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 43,062評論 0 290
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 49,608評論 1 336
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 41,356評論 3 358
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 43,555評論 1 374
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 39,077評論 5 364
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 44,769評論 3 349
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 35,175評論 0 28
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 36,489評論 1 295
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 52,289評論 3 400
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 48,516評論 2 379

推薦閱讀更多精彩內(nèi)容

  • 1. Java基礎(chǔ)部分 基礎(chǔ)部分的順序:基本語法,類相關(guān)的語法,內(nèi)部類的語法,繼承相關(guān)的語法,異常的語法,線程的語...
    子非魚_t_閱讀 31,733評論 18 399
  • 20- 枚舉,枚舉原始值,枚舉相關(guān)值,switch提取枚舉關(guān)聯(lián)值 Swift枚舉: Swift中的枚舉比OC中的枚...
    iOS_恒仔閱讀 2,309評論 1 6
  • 一. Java基礎(chǔ)部分.................................................
    wy_sure閱讀 3,830評論 0 11
  • 說到修補(bǔ),我們都會有切身的體會。每個人的生命中都總會有些東西壞了是想要修補(bǔ)的,誰也不例外。于是,修補(bǔ)這個行業(yè)...
    白琉蘇閱讀 423評論 0 0
  • 1 昨天,又是一票女閨蜜聚會的日子,除了沒酒,其實(shí)女人們的聚餐也跟男人們的饕餮沒太大區(qū)別。先是一番牢騷,傾訴各自的...
    愛君如初閱讀 737評論 2 4