0Pricing
Ruby Academy · Lekcja

Iterowanie po hashu

each, map, select

Iterowanie po hashu to bezpłatna lekcja Ruby Academy na CoddyKit. To lekcja 3 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Ruby Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Ruby Academy zawiera 4 lekcji w sumie.

Iterowanie za pomocą each

Metoda each odwiedza każdą parę. Blok otrzymuje klucz i wartość.

scores = { math: 90, art: 80 }
scores.each do |subject, score|
  puts "#{subject}: #{score}"
end

each_pair

each_pair jest aliasem each dla hashy. Należy użyć tego wariantu, który zapewnia większą czytelność.

h = { a: 1, b: 2 }
h.each_pair { |k, v| puts "#{k}=#{v}" }

Iterowanie tylko po kluczach

each_key iteruje po kluczach, gdy wartości nie są potrzebne.

h = { name: "Ada", age: 36 }
h.each_key { |k| puts k }

Iterowanie tylko po wartościach

each_value iteruje bezpośrednio po wartościach.

h = { a: 10, b: 20 }
total = 0
h.each_value { |v| total += v }
puts total

Przekształcanie za pomocą map

map wywołane na hashu zwraca tablicę. Każda para jest przekazywana jako klucz i wartość.

prices = { pen: 2, book: 5 }
labels = prices.map { |item, p| "#{item}: $#{p}" }
puts labels.inspect

transform_values

transform_values zwraca nowy hash, w którym zmieniono każdą wartość, ale zachowano klucze.

prices = { pen: 2, book: 5 }
doubled = prices.transform_values { |p| p * 2 }
puts doubled

transform_keys

transform_keys zmienia klucze, zachowując wartości. Przydaje się na przykład do konwertowania napisów na symbole.

h = { "a" => 1, "b" => 2 }
puts h.transform_keys(&:to_sym)

Filtrowanie za pomocą select

select (alias filter) zachowuje pary, dla których blok zwraca true, i zwraca nowy hash.

scores = { a: 90, b: 50, c: 70 }
passing = scores.select { |k, v| v >= 70 }
puts passing

Odrzucanie par

reject działa przeciwnie do select. Usuwa pary, dla których blok zwraca true.

scores = { a: 90, b: 50 }
puts scores.reject { |k, v| v < 60 }

Wyszukiwanie i zliczanie

find zwraca pierwszą pasującą parę jako tablicę. count z blokiem zlicza dopasowania.

h = { a: 1, b: 2, c: 3 }
puts h.find { |k, v| v == 2 }.inspect
puts h.count { |k, v| v.odd? }

Sumowanie wartości

Połącz values z sum, aby obliczyć sumę, albo użyj each_with_object do niestandardowej agregacji.

cart = { apple: 3, pear: 5 }
puts cart.values.sum

Szybki test

Sprawdź swoją wiedzę o iterowaniu po hashach.

Podsumowanie

Potrafi już Pan/Pani iterować po hashach:

  • each, each_key, each_value
  • map, transform_values, transform_keys
  • select/reject do filtrowania
  • find, count i sumowanie wartości

W następnej kolejności: wartości domyślne i scalanie.

h = { a: 1, b: 2, c: 3 }
puts h.select { |k, v| v.odd? }

Często zadawane pytania

Czy lekcja „Iterowanie po hashu” jest bezpłatna?

Tak — pełny tekst „Iterowanie po hashu” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Ruby Academy, przejdź na CoddyKit PRO. Kurs Ruby Academy zawiera 4 lekcji w sumie.

Co nauczysz się w „Iterowanie po hashu”?

each, map, select Ćwiczysz Ruby Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.

Czy potrzebuję doświadczenia, aby zacząć Ruby Academy?

Nie wymagamy żadnego doświadczenia. Ruby Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 3 z 4.

Ile czasu zajmuje lekcja „Iterowanie po hashu”?

Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.

Czy mogę pisać i uruchamiać kod w tej lekcji Ruby Academy?

Tak. Każda lekcja Ruby Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.

Wszystkie lekcje w tym kursie

  1. Symbole a napisy
  2. Tworzenie i odczytywanie hashy
  3. Iterowanie po hashu
  4. Wartości domyślne i scalanie
← Powrót do Ruby Academy