1.lua是一個大小寫敏感的語言
2.字串可以用’'引起也可以用""
3.單行註釋:-- 多行註釋:–[[…]]
4.lua中的八種數據型別:nil,boolean,number,string,userdata,thread,table,function
nil:表達一個無效值(比如定義但未賦值的變數),在條件表達式中相當於false
boolean:nil跟false判斷爲假,其餘爲真,0和' '也爲真
number:雙精度型別的浮點數
userdata:任意儲存在變數中的c數據結構
string: d=string.gsub(a,b,c):將字串a中的b子字串替換爲c然後賦值給d
5.自動轉換:
使用+時,string會轉變爲數位:
print(「100」+「100」)—> 輸出200
print(「100」+100)—> 輸出200
使用…將數位變爲字串並連線字串:
print(‘hello ‘… 1 …’ world’)
注意:必須在數位後面新增空格防止被解釋錯
6.全域性變數與區域性變數;
全域性變數不需要特別宣告,區域性變數使用 local宣告
使用區域性變數的好處:避免命名衝突,存取區域性變數比存取全域性變數更快。
7.邏輯運算子:
and:邏輯與操作符:a and b:若a爲false則返回a,否則返回b。
or:邏輯或操作符:a or b:若a爲true則返回a,否則返回b。
not:與邏輯預算結果相反。
8.table的構建遍歷
local table={2,‘a’,‘bipeng’}
遍歷:
for k,v in pairs(table) do
print(k,v)
end
9.table取長度操作符:#
10.賦值語句:
多重賦值時:
當變數個數>值的個數 按變數個數補nil
當變數個數<值的個數 按變數的個數忽略值
lua會先計算=右邊的值再賦值
交換值:x,y=y,x
10.控制結構語句:
if…else語句:
if conditions then
......
else if conditions then
....
else
...
end
while…do語句:
while conditions do
.....
end
repeat…until:
repeat
…
until conditions
for語句:
控制的是區域性變數
回圈過程中不能修改控制變量的值
數值for回圈:
for var=exp1,exp2,exp3 do
…
end
exp3可以忽略,預設爲1
三個表達式只能在回圈開始前觸發一次;可以是函數返回值
泛型for回圈:
for k,v in pairs(t) do
…
end