馬上加入Android 台灣中文網,立即免費下載應用遊戲。
您需要 登錄 才可以下載或查看,沒有帳號?註冊
x
寫腳本精靈的腳本,基本的數據類型是要知道的,基本的比較方式也是要知道的,數字和字符串之間的關係至少要明白,下面是摘抄的,給新手們看看。歡迎高手前來指導。
Nil
Lua中特殊的類型,他只有一個值:nil;一個全局變量沒有被賦值以前默認值為nil;給全局變量負nil可以刪除該變量。
Booleans
兩個取值false和true。但要注意Lua中所有的值都可以作為條件。在控制結構的條件中除了false和nil為假,其他值都為真。所以Lua認為0和空串都是真。
Numbers
表示實數,Lua中沒有整數。一般有個錯誤的看法CPU運算浮點數比整數慢。事實不是如此,用實數代替整數不會有什麼誤差(除非數字大於100,000,000,000,000)。 Lua的numbers可以處理任何長整數不用擔心誤差。你也可以在編譯Lua的時候使用長整型或者單精度浮點型代替numbers,在一些平台硬件不支持浮點數的情況下這個特性是非常有用的。和其他語言類似,數字常量的小數部分和指數部分都是可選的
Strings
指字符的序列。 lua是8位字節,所以字符串可以包含任何數值字符,包括嵌入的0。這意味著你可以存儲任意的二進制數據在一個字符串裡。 Lua中字符串是不可以修改的,你可以創建一個新的變量存放你要的字符串
a = "one string"
string和其他對像一樣,Lua自動進行內存分配和釋放,一個string可以只包含一個字母也可以包含一本書,Lua可以高效的處理長字符串,1M的string在Lua中是很常見的。可以使用單引號或者雙引號表示字符串
a = "a line"
b = "another line"
為了風格統一,最好使用一種,除非兩種引號嵌套情況。對於字符串中含有引號的情況還可以使用轉義符來表示。 Lua中的轉義序列有:
a bell
back space -- 後退
f form feed -- 換頁
newline -- 換行
carriage return -- 回車
horizontal tab -- 製表
v vertical tab
backslash -- ""
" double quote -- 雙引號
" single quote -- 單引號
[ left square bracket -- 左中括號
] right square bracket -- 右中括號
運行時,Lua會自動在string和numbers之間自動進行類型轉換,當一個字符串使用算術操作符時,string就會被轉成數字。
print("10" + 1) --> 11
print("10 + 1") --> 10 + 1
print("-5.3e - 10" * "2") --> -1.06e-09
print("hello" + 1) -- ERROR (cannot convert "hello")
反過來,當Lua期望一個string而碰到數字時,會將數字轉成string。
print(10 .. 20) --> 1020
儘管字符串和數字可以自動轉換,但兩者是不同的,像10 == "10"這樣的比較永遠都是錯的。如果需要顯式將string轉成數字可以使用函數tonumber(),如果string不是正確的數字該函數將返回nil。
line = io.read() -- read a line
n = tonumber(line) -- try to convert it to a number
if n == nil then
error(line .. " is not a valid number")
else
print(n*2)
end
反之,可以調用tostring()將數字轉成字符串,這種轉換一直有效:
print(tostring(10) == "10") --> true
print(10 .. "" == "10") --> true |
評分
-
查看全部評分

|