LUA學習(二) 基本語法

2021-06-29 07:48:11 字數 2846 閱讀 7196

eg1:

print("hello world")--輸出函式

hello world           --[[          lua語句是解釋語言,邊編譯邊執行,每句不用分號結束。]]

eg2:

--變數有值的時候才有型別,否則變數本身是無型別的

a=1;

b="abc"

c={}

d=print;

print(type(a))

print(type(b))

print(type(c))

print(type(d))

--輸出

number

string

table

function

eg3:

--可以一次對多個變數賦值,規則:如果等號(「=」)右邊多了,則捨棄,左邊多了,則賦值為空(nil) 1 23

a,b,c,d,e = 1, 2,"three","four", 5

print(a,b,c,d,e)

-- 輸出

1       2       three   four    5

-- 表示式 a,b=b,a表示a和b的值交換,注:型別不一樣照樣可以交換

eg4:

-- string and a number). – 在lua中兩點「..」表示字串連線,對應其他語言中的「+」連線 1

2a,b,c,d,e = 1, 1.123, 1e9, -123, .0008

print("a="..a,"b="..b,"c="..c,"d="..d,"e="..e)

--輸出

a=1     b=1.123 c=1000000000    d=-123  e=0.0008

eg5:table

-- lua中表結構和js中的物件一樣可以隨時增加或刪除(直接賦值nil)屬性。

--[[ 讀取有多種方式,可以用點「.」的方式,也可以用索引index,不過在lua有點特殊,首先索引是從一開始,其次index=1並不一定是第乙個元素值,比如下面的address[1]=nil,而不是「wyman street」,具體的以後在講]]1 23

4567

89

address={} -- empty address

address.street="wyman street"

address.streetnumber=360

address.aptnumber="2a"

address.city="watertown"

address.state="vermont"

address.country="usa"

print(address.streetnumber, address["aptnumber"])

--輸出

360       2a

eg6:if else 語句

-- lua中的語句塊語法有點類似vb都是以end結束1 23

45

6a=1

ifa==1 then    --注:if和elseif後面都一樣需要條件+then

print ("a is one")

else

print("a is't one")

end

--輸出

a is one

eg7:

while語句和repeat until語句

-repeat until 類似於c++裡面的for迴圈1 23

4567

89

10a=1

whilea~=5do-- lua uses ~= to mean not equal

a=a+1

io.write(a.." ")

end

a=0

repeat

a=a+1

print(a)

until a==5

二 Lua 基本語法

上一節 一 lua 資料型別及表達示 本節內容要點 lua的基本語法賦值語句 a 10 name al ex 也可以同時對多個變數進行賦值,以變數的個數為基礎,沒有匹配的變數將會賦值為nil。如果賦值語句個數多餘變數個 數,則會忽略多餘的賦值語句 a b 10,20 a,b 10,20,30 a,b...

Lua學習之基本語法

堅持 成長 每日一篇 lua支援對多個變數同時賦值,當變數個數和值的個數不一致時,lua 會一直以變數個數為基礎採取以下策略。a.變數個數 值的個數 按變數個數補足 nil b.變數個數 值的個數 多餘的值會被忽略 例如 a,b,c 0,1 print a,b,c 0 1 nil a,b a 1,b...

Lua學習筆記 基本語法

print hello world 輸出的結果為 hello world print hello world 這是單行注釋 print hello world 使用兩個減號與兩個中括號來進行多行注釋並以中括號結尾 lua表示符用來定義乙個變數,並且表示符的選取有相關規則。表示符一般使用字母或者下劃線...