lua資料結構

2021-08-09 17:01:37 字數 3077 閱讀 8137

1.說明

k-v資料結構,k非nil的任意型別

2.賦值

local tab = {}  初始化

-- key 預設

local tab =

訪問:tab[1] 。。。

-- key 數字

local tab =

訪問:tab[60] 。。。

-- key 字串

local tab =

訪問:tab.aa 。。。

1.方法一

local tab = {}

1.增table.insert( tab, 元素)

2.刪table.remove( tab, 1 )

3.改4.查

5.排序

local

function

sort(a, b)

-- a>b倒序、areturn

a< b

endlocal

tab =

table.sort(tab, sort)

2.方法二

1.長度:#tab

參考1.說明

1.索引:lua中字串索引從前往後是1,2,……,從後往前是……,-2,-1

2.操作:string庫中所有的function都不會修改原字串,只返回乙個結果

3.兩種呼叫方式

local a = 'abcd'

-- a操作、'abcd'索引

--與 string.len(a) 效果相同, 其他string庫函式也類似

string.len(a) -- 傳遞self呼叫

a:len() -- ":"代表a,物件導向呼叫

2.賦值
-- 1.一般賦值

local str = 'adsd\n'

local str = "aaa\04932"

local str = [[adsds]]

local str = [==[fsdfsdf]==]

-- 2.轉義字元

print('\049') a

print('\n') 換行

local s = "abcdef"

1.長度

string.len(s) 6

#s 6

2.重複

string.rep(s,2) "abcdefabcdef" 重複兩次

3.子字串

-- string.sub(str, 開始下標, 結束下標(預設最後))

string.sub(s,2) "bcdefg" 從2下標開始到最後

string.sub(s,-2) "fg" 取後 2 個

string.sub(s,2,-2) "bcdef" 從2下標開始到倒數第二個(包括第二個)

string.sub(s,2,4) "bcd" 從2下標開始到下標4

4.大小

string.lower("abc") 返回 "abc"

string.upper("abc") 返回 "abc"

5.轉成字串

string.format("hh %s",s) 連線後 "hh abcdef"

local s = "hello world"

1.查詢匹配位置

string.find(s, "hello") 1,5

2.替換

string.gsub(s, "o", "a") "hella, warld"

1.分割字串
local str = 'abcdef'

for i=1,#str do

local d = string.byte(str, i)

local

char = string.format("%c", d)

print(char)

end

1.漢字:乙個漢字等於三個字元(字元範圍 0~255)

2.特殊字元 :乙個特殊字元(è)等於兩個字元(字元範圍 128~255)

3.其他字元: 0~127 asscii

舉例

local str = '回好é1'

local newstr,len = string.gsub(str,"[\128-\255]",'*')

print(#newstr) 9=3+3+2+1

print(len) 8=3+3+1+1

'回好**'

unicode、ascii、utf8、gbk、gb231

一般都能找到對應的轉換庫

1.轉utf8
lua 轉換到 utf8 編碼格式,處理漢字和特殊字元的長度及求子字串

1.絕對值   math.abs(-15)           結果:15

2.向下取整 math.floor(5.6) 結果:5

3.餘數 math.fmod(-14,5) 結果:-4

4.分割整數小數 math.modf(5.6) 結果:5,0.6

5.最大 math.max(2.71, 100, -98, 23) 結果:100

6.最小 math.min(2.71, 100, -98, 23) 結果:-98

7.隨機 math.random(1, 100) 結果:1~100

8.隨機種子 math.randomseed(os.time())

Lua資料結構

1.簡介 lua語言只有一種基本資料結構,那就是table,所有其他資料結構如陣列啦,類啦,都可以由table實現.2.table的下標 例e05.lua arrays mydata mydata 0 foo mydata 1 42 hash tables mydata bar baz iterat...

Lua資料結構。

方法一 local function dotest array for i 1,4 do array i for j 1,4 do array i j 12 end end for i 1,4 dofor j 1,4 do print array i j endend end 方法二 local f...

Lua資料結構

1.簡介 lua語言只有一種基本資料結構,那就是table,所有其他資料結構如陣列啦,類啦,都可以由table實現.2.table的下標 例e05.lua arrays mydata mydata 0 foo mydata 1 42 hash tables mydata bar baz iterat...