Lua 에서 table (표) 의 간단 한 사용

Lua table (표)
table 은 Lua 의 데이터 구조 로 서로 다른 데이터 형식 을 만 드 는 데 도움 을 줍 니 다. 예 를 들 어 숫자, 사전 등 입 니 다.Lua table 은 연관 형 배열 을 사용 합 니 다. 임의의 형식의 값 으로 배열 의 색인 을 만 들 수 있 지만 이 값 은 nil 일 수 없습니다.Lua table 은 크기 가 고정 되 지 않 아 필요 에 따라 확장 할 수 있 습 니 다.
table 의 구조
구조 기 는 표를 만 들 고 초기 화 하 는 표현 식 입 니 다.시 계 는 루 아 특유 의 기능 이 강 한 것 이다.가장 간단 한 구조 함 수 는 {} 입 니 다. 빈 표를 만 드 는 데 사 용 됩 니 다.배열 을 직접 초기 화 할 수 있 습 니 다:
tab1= {} --  

tab2 = {key1 = "value1",key2 = "value2"} --   

--    
print(tab2.key1)
print(tab2["key1"])

--  
for k,v in pairs(tab2) do
	print(k..v)
end


tab3 = {"a","b","c","d"} --   1for key,value in pairs(tab3) do
	print(key..value)
end

--[[
  :
value1
value1
key1value1
key2value2
1a
2b
3c
4d
--]]
--     
mytable = {}

--    
mytable[1]= "Lua"

--     
mytable = nil
-- lua          


표 의 요소 연결, 삽입 과 제거,
--     table.xxxmethod

--       
print(table.concat(mytable))          --     
print(table.concat(mytable,","))	  --       
print(table.concat(mytable,",",2,4))  --               

--     
mytable[6] = 'java'                   --      
mytable[#mytable+1] = "php"			  --      +1
table.insert(mytable,"c")             --         
--   2         
table.insert(mytable,2,"sql")

--        ,         
table.remove(mytable,2)

--  2     ,   ,,             
mytable[2] = nil

--    
for v,k in pairs(mytable) do
	print(v,k)
end

--[[    :
luaC#jsbooc++
lua,C#,js,boo,c++
C#,js,boo
1	lua
3	js
4	boo
5	c++
6	java
7	php
8	c
--]]

* * 표 의 정렬: * * 숫자 를 제외 하고 알파벳 도 정렬 할 수 있 으 며 문자 의 ACIll 코드 에 따라 정렬: 예시:
mytable = {'lua','C#','js','boo','c++'}

print('   ')
for v,k in pairs(mytable) do
	print(v,k)
end

table.sort(mytable)
print('   ')
for v,k in pairs(mytable) do
	print(v,k)
end

--[[1	lua
2	C#
3	js
4	boo
5	c++
   
1	C#
2	boo
3	c++
4	js
5	lua
--]]

메모: 우리 가 가 져 온 table 의 길 이 를 사용 할 때 \ # 또는 table. getn 을 사용 하 더 라 도 색인 이 중단 되 는 곳 에서 기술 을 중단 합 니 다. table 의 길 이 를 정확하게 얻 을 수 없 으 므 로 교체 기 형식 으로 배열 을 옮 겨 다 니 는 것 을 추천 합 니 다.

좋은 웹페이지 즐겨찾기