많은 데이터 구조에서 공통적으로 필요한 것은 값을 반환하는 것입니다.이 문서에서는 pairs() 또는 ipairs() 를 사용하여 키 또는 값과 같은 테이블 요소의 절반을 검색하여 나머지 절반을 찾아 반환하는 방법을 설명합니다.
예제에서는 수리를 기다리는 배열 목록을 사용합니다. ipairs()는 줄에서 배의 위치를 반환하는 데 사용됩니다.
local shipToFind = "Void Racer"
-- 수리를 기다리는 배
local waitingShips = {"Battle Sun", "Void Racer", "The Big Slow"}
-- 라인에 장소 표시하기
local function getPlaceInLine(shipName)
for placeInLine, ship in ipairs(waitingShips) do
if ship == shipName then
return placeInLine
end
end
end
--줄에서 인쇄 장소 표시
local placeInLine = getPlaceInLine(shipToFind)
print("Your place in line is " .. placeInLine)
사전 검색 예시
방에서 방으로 이동하는 집에서 잃어버린 애완 동물을 검색한 적이 있나요? 자신의 코드에서 집이라는 사전을 검색하여 어떤 방에 잃어버린 강아지가 있는지 확인하는 함수를 만듭니다.
아래 사전을 복사하여 집으로 작용합니다.
local house = {kitchen = "pile of Junk",livingRoom = "kitten",bedroom1 = "nobody there",bedroom2 = "puppy",}사전을 검색하기 위한 새 함수 를 만들어 검색할 매개변수를 포함하십시오. 검색할 사전과 검색할 값을 포함하십시오.
pairs()를 사용하여 사전을 반복하십시오. 아래 솔루션에서 작업을 확인하기 전에 자신만의 코드를 작성하십시오.
local function findPet(whereToSearch, searchFor)for place, value in pairs(whereToSearch) doendendfor 루프가 사전을 반복하는 동안 return를 사용하여 애완동물이 발견된 방을 되돌려 보냅니다.
local function findPet(whereToSearch, searchFor)for place, value in pairs(whereToSearch) doif value == searchFor thenreturn placeendendend