Lua 基本資料型別的一些簡單的實用方法

2021-10-07 16:28:10 字數 3046 閱讀 9616

lua是一種輕量小巧的指令碼語言。宿主語言c/c++提供容易使用的擴充套件介面和機制。

變數的一些介紹:

lua 變數有三種型別:全域性變數、區域性變數、表中的域。變數的預設值是nil。

lua 中的變數預設是全域性變數,用local宣告的為區域性變數,表中的域在此表內。

local a= 5 -- 區域性變數。

b = 5  -- 全域性變數。

關於常用基本資料型別的一些實用方法

1,基本資料型別

(1)number

#lua只有這一種number資料型別,表示雙精度型別的實浮點數。位元組數8,15個有效位,超過會擷取。使用中需要注意位數問題。

--string轉number

function tonumber(e, base) end

--local a = tonumber("hello world")

(2)string

#string的簡單使用方法

--判斷源字串中是否包含目標字串,匹配

--function string.find(s, pattern, init, plain) end -- 在乙個指定的目標字串中搜尋指定的內容(第三個引數為索引),返回其具體位置。不存在則返回 nil。

if string.find("hello world","w",1) then

print("元字串hello world中包含目標字串w")   --

else

print("元字串hello world中不包含目標字串w")

end

--字串拼接

--function string.format(formatstring, ...) end

print(string.format("hello %s","world"))

--比較簡潔的方式為使用連字元..

print("hello ".."world")

--獲取字串的長度

local a = "hello world"

print(#a)

--字串擷取

--function string.sub(s, i, j) end

--s 元字串,i 起始位置,j 結束位置

print(string.sub("hello world"),1,4)

--字串分割

function string:split(sep)

local sep, fields = sep or ":", {}

local pattern = string.format("([^%s]+)", sep)

self:gsub(pattern, function (c) fields[#fields + 1] = c end)

return fields

end--使用

local str = "hello, world"

local resulttab = str:split(",") --分割後得到乙個陣列

--字串替換

--function string.gsub(s, pattern, repl, n) end

--s是原字串,pattern為目標字串,repl為要替換的字串,n是替換次數-可選(可以忽略,忽略則代表全部替換)

local str = "abc"

--number轉string

--function tostring(v) end

--local  a = 1.00234

local  str = tostring(a)

(3)表

lua中的表下表從1開始,可以指定特殊下標。

#表的建立

local tab = 

local tab =

--小寫的a,b分別為下標

#表的簡單使用

--插入元素

--function table.insert(list, pos, value) end

--table.insert(tab,1,"value") --向tab表的第1位插入乙個value的值。

table.insert(tab,a,"a") --向tab表的下標為a的位置插入乙個a值。

--表元素賦新值

--

tab[1] =value -- 下表1的對應的新值是value。

--tab["a"] = a -- 下表a的對應的新值是a。

--移除元素

--function table.remove(list, pos) end

--table.remove(tab,1) -- 移除tab表下標為1的元素。

table.remove(tab,"a") -- 移除tab表下標為a的元素。

tab = nil   -- 清空tab表

--連線

--function table.concat(list, sep, i, j) end  -- sep,i,j 是可選項。

--sep是指定的連線符號

--i,j,i是連線開始小標,j是連線結束下表。 i要小於j,但一定要大於等於1,因為lua表下標從1開始。

--local tab =

local result = table.concat(tab,"+",1,2) -- 連線tab表的下標為1和2的元素,以+為連線符號。輸出結果因該是a+b。

--local reesult table.concat(tab) -- 輸出結果abc。

--獲取tab長度

--

local tab =

C 九 基本資料型別的強制轉換 一些簡單的運算子

1.資料型別轉換 1 convert to資料型別 被撞變數 2 被轉變量 tostring 3 想轉的資料型別 parse 被轉變量 4 想轉的資料型別 被轉變量 2.運算子 1 sizeof 獲取資料型別在記憶體中的大小。int i sizeof long console.writeline i...

基本資料型別簡單整理

captlze首字母大寫 upper 全大寫 lower 全小寫 find通過元素找索引,找不到 1 index 通過元素找索引,找不到 報錯 swpcase 大小寫翻轉 repalce old,new,count 替換 isdigit 返回bool值 isapha isnumpha startsw...

關於學習完基本資料型別後的一些收穫

2 浮點型 二 不可參與計算的資料型別 byte是乙個8位的整型,在記憶體中占用1個位元組,它的範圍是 128 127,也就是 2的7次方到2的7次方減1short短整型是乙個16位的整型,在記憶體中占用2個位元組,它的範圍是 32768 32767 也就是 2的15次方到2的15次方減1int是預...