¥開(kāi)啟¥
【基礎(chǔ)-循環(huán)之while循環(huán)】
〖2017-08-15 23:22:33〗
《當(dāng)天條件為真時(shí)(true)時(shí)€while(true) do€print("將會(huì)永遠(yuǎn)循環(huán)下去")€end€a=100€while(a=100) do€print("將會(huì)永遠(yuǎn)循環(huán)下去")€end€€就是這么簡(jiǎn)單€》
『小菜』
〔Lua基礎(chǔ)知識(shí)〕
【基礎(chǔ)-循環(huán)之for循環(huán)】
〖2017-08-15 23:23:09〗
《lua有兩種循環(huán)(在我的認(rèn)知里)
這篇講for循環(huán)般眉,我們常用的€看個(gè)例子€for n=1,100 do€print(1)€end€他將會(huì)打印100遍1€€就是這么簡(jiǎn)單€》
『小菜』
〔Lua基礎(chǔ)知識(shí)〕
【基礎(chǔ)-賦值語(yǔ)句】
〖2017-08-15 23:25:12〗
《a="我是".."帥哥"€這句等于€a="我是帥哥"€€也可以同時(shí)對(duì)多個(gè)賦值例如€a,b="這是a","這是b"€這句等于€a="這是a"€b="這是b"€這不是全部蝌蹂,但都是我們會(huì)經(jīng)常用到的€》
『小菜』
〔Lua基礎(chǔ)知識(shí)〕
【基礎(chǔ)-變量】
〖2017-08-15 23:26:47〗
《lua的變量默認(rèn)全局變量€例如 a=5€這就是一個(gè)全局變量袜蚕,哪怕是在函數(shù)封裝等€申明一個(gè)局部變量扯躺,加個(gè)local€€例如在一個(gè)函數(shù)封裝里(這里你不需要懂烘嘱,以后會(huì)講)€€局部變量=function()€local a=5€print(a)€end€print(a)€€這就是一個(gè)局部變量萝快,第一個(gè)會(huì)打印出5€第二個(gè)就是nil€因?yàn)榫植孔兞看桑砸粋€(gè)代碼塊的end為結(jié)束》
『小菜』
〔Lua基礎(chǔ)知識(shí)〕
【基礎(chǔ)-布爾值數(shù)據(jù)類(lèi)型詳解】
〖2017-08-15 23:29:25〗
《這個(gè)東西只有兩種€true真 這里指,某種條件成立€false假? 這里指蹈矮,某種條件不成立€就像做算式一樣€5不可能等于3€我們用lua的語(yǔ)法來(lái)打印一下€€print(5=3)€屏幕會(huì)返回false€因?yàn)?根本不可能會(huì)等于3E槁摺!泛鸟!€€反之我們來(lái)打印一下print(3=3)€返回什么蝠咆,不用說(shuō)了吧€》
『小菜』
〔Lua基礎(chǔ)知識(shí)〕
【基礎(chǔ)-nill數(shù)據(jù)類(lèi)型詳解】
〖2017-08-15 23:30:10〗
《nil就是空€空就是沒(méi)有€例如我們憑空打印一個(gè)a? €print(a)€屏幕會(huì)提示nil€因?yàn)檫@里的a根本不存在€nil還可以銷(xiāo)毀一個(gè)變量€例如 €a=5€a=nil€print(a)屏幕會(huì)提示nil€因?yàn)閍已經(jīng)被銷(xiāo)毀了,已經(jīng)沒(méi)有了》
『小菜』
〔Lua基礎(chǔ)知識(shí)〕
【基礎(chǔ)-number數(shù)據(jù)類(lèi)型詳解】
〖2017-08-15 23:51:02〗
《lua里面只有一種number類(lèi)型€并沒(méi)有java中的float的類(lèi)型€€例如€€a=5€這就是一個(gè)number賦值€基礎(chǔ)-常用數(shù)據(jù)類(lèi)型€布爾值? 只有兩種€true? ? false€€數(shù)值? number€print(5)--提示? 5€字符串 string
print("5")--提示 5? 這里的5跟上面的5不一樣北滥,字符串不能跟數(shù)值比較8詹佟!碑韵!(具體下節(jié)講)€€空值 nil€€print(a)--打印一個(gè)沒(méi)有任何值的賦值赡茸,會(huì)提示nil€€這就是lua幾種常見(jiàn)的數(shù)據(jù)類(lèi)型€》
『小菜』
〔Lua基礎(chǔ)知識(shí)〕
【基礎(chǔ)-關(guān)鍵詞】
〖2017-08-15:23:33〗
《關(guān)鍵詞的意思就是€你不能用這些詞語(yǔ)來(lái)賦值變量了€以下是lua所有關(guān)鍵詞€€and? ? ? break ? ? do? ? ? else? ? elseif? end? ? ? false€for? ? ? function? if? ? ? in? ? ? local? ? nil ? ? ? not
or ? ? ? repeat? ? return then? ? true? ? until? ? while €》
『小菜』
〔Lua基礎(chǔ)知識(shí)〕
【基礎(chǔ)-代碼注釋】
〖2017-08-15 23:34:45〗
《id.onClick=function()€€end€––以end結(jié)束》
『小菜』
〔Lua基礎(chǔ)知識(shí)〕
【基礎(chǔ)-點(diǎn)擊事件】
〖2017:23:56:59〗
《id.onClick=function()€––事件
end€––以end結(jié)束》
『小菜』
〔Lua基礎(chǔ)知識(shí)〕
【 基礎(chǔ)-print打印】
〖201-08-15 23:37〗
《pprint("hello word")––完整版€print"hello word"––簡(jiǎn)化版€a="hello word"––一個(gè)變量€print(a)––打印€》
『小菜』
〔Lua基礎(chǔ)知識(shí)〕
【打印】
〖2017-08-16 17:37:56〗
《打印€print"Hello World!"€print("Hello World")》
『小菜』
〔Lua基礎(chǔ)知識(shí)〕
【注釋】
〖2017-08-16 17:38:12〗
《注釋€單行注釋? --€多行注釋? --[[]]》
『小菜』
〔Lua基礎(chǔ)知識(shí)〕
【字符串】
〖2017-08-16 17:37:43〗
《字符串€a="String"€a=[[String]]€a=[===[String]===]》
『小菜』
〔Lua基礎(chǔ)知識(shí)〕
【賦值】
〖2017-08-16 17:40:50〗
《賦值€a="Hello World"€€--lua支持多重賦值€a,b="String a","String b"€€--交換值€a,b="String a","String b"€a,b=b,a》
『小菜』
〔Lua基礎(chǔ)知識(shí)〕
【類(lèi)型簡(jiǎn)介】
〖2017-08-16 17:41:38〗
《類(lèi)型簡(jiǎn)介€Lua 存在的數(shù)據(jù)類(lèi)型包括:€1.nil€此類(lèi)型只有一個(gè)值 nil祝闻。用于表示“空”值占卧。全局變量默認(rèn)為 nil,刪除一個(gè)已經(jīng)賦值的全局變量只需要將其賦值為 nil(對(duì)比JavaScript联喘,賦值 null 并不能完全刪除對(duì)象的屬性华蜒,屬性還存在,值為 null)€€2.boolean€此類(lèi)型有兩個(gè)值 true 和 false豁遭。在 Lua 中叭喜,false 和 nil 都表示條件假,其他值都表示條件真(區(qū)別于 C/C++ 等語(yǔ)言的是蓖谢,0 是真)€€3.number€雙精浮點(diǎn)數(shù)(IEEE 754 標(biāo)準(zhǔn))捂蕴,Lua 沒(méi)有整數(shù)類(lèi)型€€4.string€你可以保存任意的二進(jìn)制數(shù)據(jù)到字符串中(包括 0)。字符串中的字符是不可以改變的(需要改變時(shí)闪幽,你只能創(chuàng)建一個(gè)新的字符串)啥辨。獲取字符串的長(zhǎng)度,可以使用 # 操作符(長(zhǎng)度操作符)盯腌。例如:print(#”hello”)溉知。字符串可以使用單引號(hào),也可以使用雙引號(hào)包裹腕够,對(duì)于多行的字符串還可以使用 [[ 和 ]] 包裹级乍。字符串中可以使用轉(zhuǎn)義字符,例如 \n \r 等帚湘。使用 [[ 和 ]] 包裹的字符串中的轉(zhuǎn)義字符不會(huì)被轉(zhuǎn)義€€5.userdata€用于保存任意的 C 數(shù)據(jù)玫荣。userdata 只能支持賦值操作和比較測(cè)試€€6.function€函數(shù)是第一類(lèi)值(first-class value),我們能夠像使用其他變量一樣的使用函數(shù)(函數(shù)能夠保存在變量中大诸,可以作為參數(shù)傳遞給函數(shù))€€7.thread€區(qū)別于我們常常說(shuō)的系統(tǒng)級(jí)線(xiàn)程€€8.table€被實(shí)現(xiàn)為關(guān)聯(lián)數(shù)組(associative arrays)崇决,可以通過(guò)任何值來(lái)進(jìn)行索引(nil 除外)材诽。和全局變量一樣,table 中未賦值的域?yàn)?nil恒傻,刪除一個(gè)域只需要將其賦值為 nil(實(shí)際上,全局變量就是被放置在一個(gè) table 中)€€type 函數(shù)用于返回值的類(lèi)型:€print(type("Hello World")) --> string€print(type(10.4*3)) -->number€print(type(print))? ->function€print(type(type(X)))? --> string€》
『小菜』
〔Lua基礎(chǔ)知識(shí)〕
【if(判斷語(yǔ)句)】
〖2017-08-16 17:44:52〗
《if(判斷語(yǔ)句)€--判斷值是否為真€a=true€if a then€print("真")€else€print("假")€end€--比較值是否相同€a=true€b=false€if a==b then€print("真")€else€print("假")€end》
『小菜』
〔Lua基礎(chǔ)知識(shí)〕
【function(函數(shù))】
〖2017-08-16 17:46:16〗
《function(函數(shù))€函數(shù)有兩個(gè)用途€(xiàn)1.完成指定功能建邓,函數(shù)作為調(diào)用語(yǔ)句使用€2.計(jì)算并返回值盈厘,函數(shù)作為賦值語(yǔ)句的表達(dá)式使用€€€實(shí)例1:€function 讀取文件(路徑)€文件內(nèi)容=io.open(路徑):read("*a")€return 文件內(nèi)容--return用來(lái)返回值€end€€€€實(shí)例2:€require "import"€import "android.widget.EditText"€import "android.widget.LinearLayout"€function 編輯框()€return EditText(activity)€end€layout={€LinearLayout;€id="父布局",€{編輯框,€id="edit",€text="文本",€},€};€activity.setContentView(loadlayout(layout))€--把這段代碼放到調(diào)試?yán)锩嫒y(cè)試€》
『小菜』
〔Lua基礎(chǔ)知識(shí)〕
【 基礎(chǔ)代碼】
〖2017-08-16 17:49:32〗
《基礎(chǔ)代碼€activity.setTitle('Title')--設(shè)置窗口標(biāo)題€activity.setContentView(loadlayout(layout))--設(shè)置窗口視圖€activity.setTheme(android.R.style.Theme_DeviceDefault_Light)--設(shè)置主題€activity.getWidth()--獲取屏幕寬€activity.getHeight()--獲取屏幕高€activity.newActivity("main")--跳轉(zhuǎn)頁(yè)面€activity.finish()--關(guān)閉當(dāng)前頁(yè)面€activity.recreate()--重構(gòu)activity€os.exit()--結(jié)束程序€tostring()--轉(zhuǎn)換字符串€tonumber()--轉(zhuǎn)換數(shù)字€tointeger()--轉(zhuǎn)換整數(shù)€--線(xiàn)程€--thread€thread(function()print"線(xiàn)程"end)€--task€task(function()print"線(xiàn)程"end)€》
『小菜』
〔Lua基礎(chǔ)知識(shí)〕
【W(wǎng)hile循環(huán)】
〖2017-08-16 17:51:49〗
《While循環(huán)€--只要條件為真便會(huì)一直循環(huán)下去€€--輸出1到10€a=0€while a~=10 do€a=a+1€print(a)€end€€--輸出10到1€a=11€while a~=1 do€a=a-1€print(a)€end€€--打印數(shù)組a中的所有值€shuzu={"a","b","c","d"}€a=0€while a~=#shuzu do€a=a+1€print(shuzu[a])€end€》
『小菜』
〔Lua基礎(chǔ)知識(shí)〕
【for循環(huán)】
〖2017-08-16 17:53:24〗
《For循環(huán)€--給定條件進(jìn)行循環(huán)€€--輸出從1到10€for i=1,10 do€print(i)€end€€--輸出從10到1€for i=10,1,-1 do€print(i)€end€€--打印數(shù)組a中所有的值€a={"a","b","c","d"}€for index,content in pairs(a) do€print(content)€end€》
『小菜』
〔Lua基礎(chǔ)知識(shí)〕
【比較操作符】
〖2017-08-16 17:54:10〗
《比較操作符€--Lua 支持下列比較操作符:€€==: 等于€~=: 不等于€<: 小于€>: 大于€<=: 小于等于€>=: 大于等于€這些操作的結(jié)果不是 false就是 true。€》
『小菜』
〔Lua基礎(chǔ)知識(shí)〕
【Table(數(shù)組)】
〖2017-08-16 17:55:23〗
《Table(數(shù)組)€table是lua唯一的數(shù)據(jù)結(jié)構(gòu)官边。€table是lua中最重要的數(shù)據(jù)類(lèi)型沸手。 €table類(lèi)似于 python 中的字典。€table只能通過(guò)構(gòu)造式來(lái)創(chuàng)建注簿。其他語(yǔ)言提供的其他數(shù)據(jù)結(jié)構(gòu)如array契吉、list等等,lua都是通過(guò)table來(lái)實(shí)現(xiàn)的诡渴。€table非常實(shí)用捐晶,可以用在不同的情景下。最常用的方式就是把table當(dāng)成其他語(yǔ)言的數(shù)組妄辩。€€實(shí)例1:€mytable = {}€for index = 1, 100 do€mytable[index] = math.random(1,1000)€end€€說(shuō)明:€1.數(shù)組不必事先定義大小惑灵,可動(dòng)態(tài)增長(zhǎng)。€2.創(chuàng)建包含100個(gè)元素的table眼耀,每個(gè)元素隨機(jī)賦1-1000之間的值英支。€3.可以通過(guò)mytable[x]訪(fǎng)問(wèn)任意元素,x表示索引哮伟。€4.索引從1開(kāi)始干花。€€實(shí)例2:€tab = { a = 10, b = 20, c = 30, d = 'www.jb51.net' }€print(tab["a"]) €€說(shuō)明:€1.table 中的每項(xiàng)要求是 key = value 的形式。€2.key 只能是字符串楞黄, 這里的 a, b, c, d 都是字符串池凄,但是不能加上引號(hào)。€3.通過(guò) key 來(lái)訪(fǎng)問(wèn) table 的值谅辣,這時(shí)候修赞, a 必須加上引號(hào)。€€實(shí)例3:€tab = { 10, s = 'abc', 11, 12, 13 } €print(tab[1]) = 10€print(tab[2]) = 11€print(tab[3]) = 12€print(tab[4]) = 13€說(shuō)明:€1.數(shù)標(biāo)從1開(kāi)始桑阶。€2.省略key柏副,會(huì)自動(dòng)以1開(kāi)始編號(hào),并跳過(guò)設(shè)置過(guò)的key蚣录。€》
『小菜』
〔Lua基礎(chǔ)知識(shí)〕