Zwracanie wartości z tabel

*Ta zawartość została przetłumaczona przy użyciu narzędzi AI (w wersji beta) i może zawierać błędy. Aby wyświetlić tę stronę w języku angielskim, kliknij tutaj.

Powszechną potrzebą w wielu strukturach danych jest zwracanie wartości. W tym artykule omówimy przeszukiwanie tabeli za pomocą pairs() lub ipairs() w celu uzyskania połowy jakiegokolwiek elementu tabeli, takiego jak klucz lub wartość, aby znaleźć i zwrócić drugą połowę.

Przykład wykorzystuje tablicę wymieniającą statki czekające na naprawę. ipairs() jest używane do zwrócenia miejsca statku w kolejce.


local shipToFind = "Void Racer"
-- Statki czekające na naprawę
local waitingShips = {"Battle Sun", "Void Racer", "The Big Slow"}
-- Zdobądź miejsce w kolejce
local function getPlaceInLine(shipName)
for placeInLine, ship in ipairs(waitingShips) do
if ship == shipName then
return placeInLine
end
end
end
-- Drukuj miejsce w kolejce
local placeInLine = getPlaceInLine(shipToFind)
print("Twoje miejsce w kolejce to " .. placeInLine)

Przykład wyszukiwania w słowniku

Czy kiedykolwiek szukałeś zgubionego zwierzaka w domu, przeszukując pokój po pokoju? Napisać własny kod funkcji do przeszukiwania słownika o nazwie house, aby zobaczyć, w którym pokoju znajduje się zgubiony szczeniak.

  1. Skopiuj poniższy słownik, aby działał jako dom.


    local house = {
    kitchen = "stos rupieci",
    livingRoom = "kotek",
    bedroom1 = "nikogo tam nie ma",
    bedroom2 = "szczeniak",
    }
  2. Utwórz nową funkcję o nazwie findPet(), aby przeszukać słownik. Uwzględnij parametry dla słownika do przeszukania oraz wartość do wyszukania.

  3. Użyj pairs(), aby iterować przez słownik. Spróbuj napisać własny kod, zanim sprawdzisz swoje rozwiązanie poniżej.


    local function findPet(whereToSearch, searchFor)
    for place, value in pairs(whereToSearch) do
    end
    end
  4. Kiedy pętla for iteruje przez słownik, użyj return, aby zwrócić pokój, w którym zwierzak został znaleziony.


    local function findPet(whereToSearch, searchFor)
    for place, value in pairs(whereToSearch) do
    if value == searchFor then
    return place
    end
    end
    end
©2026 Roblox Corporation. Nazwa Roblox, logo Roblox oraz hasło „Powering Imagination” należą do naszych zarejestrowanych i niezarejestrowanych znaków towarowych na terenie Stanów Zjednoczonych oraz w innych krajach.