반응형
[lua] Table Value Lenth Count
for문을 이용한 함수를 이용하여 테이블의 밸류의 개수를 알수있습니다.
혹은 테이블 형태의 변수에 #을 접두어로 사용하여 사용해도 테이블의 밸류 갯수를 리턴합니다.
하지만 이경우 key를 가지는 딕셔너리 형태의 테이블인 경우는 개수가 카운트되지 않습니다.
function lenTable(table)
if type(table) == "table" then
local count = 0
for _ in pairs(table) do
count = count + 1
end
return count
else
print('argument must input table')
end
end
> 예시
local a = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}
local b = {sx={135, 205, 270, 335, 405}, sy={625, 690, 755}}
print('a : '..lenTable(a))
-- a : 10
print('b : '..lenTable(b))
-- b : 2
print('b.sx : '..lenTable(b.sx))
-- b.sx : 5
print('b.sy : '..lenTable(b.sy))
-- b.sy : 3
print('a : '..#a)
-- a : 10
print('b : '..#b)
-- b : 0
print('b.sx : '..#b.sx)
-- b.sx : 5
print('b.sy : '..#b.sy)
-- b.sy : 3
반응형
'이미지맥스 그리고 루아(lua) > 루아(lua)' 카테고리의 다른 글
[lua] 시간 설정 및 경과 확인 함수 getClock() setClock() (0) | 2021.05.12 |
---|---|
[lua] 루아에서 sleep() 함수를 구현하기 (0) | 2021.05.10 |
[lua] 랜덤한 문자열 생성하기 -2- (함수화) (0) | 2021.04.26 |
[lua] 랜덤한 문자열 생성하기 -1- (기본편) (0) | 2021.04.24 |
[lua] 날짜와 시간 함수 os.date() (0) | 2021.04.17 |