Iterasi Hash
each, map, select.
Iterasi Hash adalah pelajaran Ruby Academy gratis di CoddyKit. Ini adalah pelajaran 3 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Ruby Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Ruby Academy mencakup 4 pelajaran total.
Melakukan Iterasi dengan each
Metode each mengunjungi setiap pasangan. Blok menerima kunci dan nilai.
scores = { math: 90, art: 80 }
scores.each do |subject, score|
puts "#{subject}: #{score}"
endeach_pair
each_pair adalah alias each untuk hash. Gunakan yang menghasilkan bacaan lebih jelas.
h = { a: 1, b: 2 }
h.each_pair { |k, v| puts "#{k}=#{v}" }Melakukan Iterasi Hanya pada Kunci
each_key melakukan perulangan pada kunci ketika Anda tidak memerlukan nilainya.
h = { name: "Ada", age: 36 }
h.each_key { |k| puts k }Melakukan Iterasi Hanya pada Nilai
each_value melakukan perulangan langsung pada nilai.
h = { a: 10, b: 20 }
total = 0
h.each_value { |v| total += v }
puts totalMengubah dengan map
map pada hash mengembalikan larik. Setiap pasangan diberikan sebagai kunci dan nilai.
prices = { pen: 2, book: 5 }
labels = prices.map { |item, p| "#{item}: $#{p}" }
puts labels.inspecttransform_values
transform_values mengembalikan hash baru dengan setiap nilai diubah, tetapi kuncinya dipertahankan.
prices = { pen: 2, book: 5 }
doubled = prices.transform_values { |p| p * 2 }
puts doubledtransform_keys
transform_keys mengubah kunci sambil mempertahankan nilai. Ini berguna untuk mengonversi teks menjadi simbol.
h = { "a" => 1, "b" => 2 }
puts h.transform_keys(&:to_sym)Memfilter dengan select
select (alias filter) mempertahankan pasangan yang bloknya bernilai true dan mengembalikan hash baru.
scores = { a: 90, b: 50, c: 70 }
passing = scores.select { |k, v| v >= 70 }
puts passingMenolak Pasangan
reject adalah kebalikan dari select. Metode ini membuang pasangan yang bloknya bernilai true.
scores = { a: 90, b: 50 }
puts scores.reject { |k, v| v < 60 }Mencari dan Menghitung
find mengembalikan pasangan pertama yang cocok sebagai larik. count dengan blok menghitung jumlah kecocokan.
h = { a: 1, b: 2, c: 3 }
puts h.find { |k, v| v == 2 }.inspect
puts h.count { |k, v| v.odd? }Menjumlahkan Nilai
Gabungkan values dengan sum untuk memperoleh total, atau gunakan each_with_object untuk agregasi khusus.
cart = { apple: 3, pear: 5 }
puts cart.values.sumPemeriksaan Singkat
Periksa pemahaman Anda tentang iterasi hash.
Ringkasan
Sekarang Anda dapat melakukan iterasi pada hash:
each,each_key,each_valuemap,transform_values,transform_keysselect/rejectuntuk memfilterfind,count, dan menjumlahkan nilai
Berikutnya: nilai bawaan dan penggabungan.
h = { a: 1, b: 2, c: 3 }
puts h.select { |k, v| v.odd? }Pertanyaan yang Sering Diajukan
Apakah pelajaran “Iterasi Hash” gratis?
Ya — teks lengkap “Iterasi Hash” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Ruby Academy, upgrade ke CoddyKit PRO. Kursus Ruby Academy mencakup 4 pelajaran total.
Apa yang akan aku pelajari di “Iterasi Hash”?
each, map, select. Kamu berlatih Ruby Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.
Apakah aku perlu pengalaman untuk memulai Ruby Academy?
Tidak diperlukan pengalaman sebelumnya. Ruby Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 3 dari 4.
Berapa lama pelajaran “Iterasi Hash” memakan waktu?
Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.
Bisakah aku menulis dan menjalankan kode dalam pelajaran Ruby Academy ini?
Ya. Setiap pelajaran Ruby Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.