이름을 인쇄하려면 pairs
또는 ipairs
함수를 사용하여 테이블을 반복해야합니다. ipairs
은 1에서 N (숫자 인덱스에만 해당)으로 반복하며, pairs
은 단위로 모든 요소를 반복합니다. 정의 된 순서는 없습니다.
> T = { {Name = "Mark", HP = 54, Breed = "Ghost"}, {Name = "Stan", HP = 24, Breed = "Zombie"}, {Name = "Juli", HP = 100, Breed = "Human"}}
> for _,t in ipairs(T) do print(t.Name) end
Mark
Stan
Juli
는 그런 다음 테이블
을 정렬 할 table.sort
기능을 사용할 수있는 장소 :
table.sort
의 두 번째 인수는 선택의 비교 함수입니다
> table.sort(T, function(x,y) return x.HP < y.HP end)
> for _,t in ipairs(T) do print(t.Name, t.HP) end
Stan 24
Mark 54
Juli 100
; 이 경우에는 HP 값만 비교하려고했습니다.
당신은'ipairs()'와'pairs()'의 의미를 뒤집었다. 'ipairs()'는 숫자 인덱스를 반복하고,'pairs()'는 모든 원소를 반복합니다. – gwell
죄송합니다. 결정된. –