Metoda group_by clasifică elementele unei colecții într-un Hash, unde cheile sunt valorile returnate de bloc, iar valorile sunt tablouri cu toate elementele corespunzătoare acelui grup.
studenti = [
{ nume: "Andrei", nota: 10 },
{ nume: "Mihai", nota: 8 },
{ nume: "Ioana", nota: 10 },
{ nume: "Elena", nota: 9 }
]
# Grupare după nota obținută:
pe_note = studenti.group_by { |s| s[:nota] }
# {10=>[{:nume=>"Andrei"...}, {:nume=>"Ioana"...}], 8=>[...], 9=>[...]}
# Grupare cuvinte după lungime:
cuvinte = ["soare", "cer", "munte", "nor", "stea"]
pe_lungime = cuvinte.group_by(&:length)
# {5=>["soare", "munte"], 3=>["cer", "nor"], 4=>["stea"]}
Sintaxă concisă: Transmiterea (&:metoda) profită de conversia Symbol#to_proc pentru grupări extrem de scurte și elegante.
Întrebări & Exemple de Cod:
Enumerable#group_by în Ruby: Clasificarea Elementelor în DicționareAi o nelămurire despre utilizarea comenzii
Enumerable#group_by în Ruby: Clasificarea Elementelor în Dicționaresau ai descoperit un truc / fragment de cod util? Distribuie-l cu ceilalți programatori!Fii primul care pune o întrebare sau distribuie un fragment de cod / prompt!
Nu au fost adăugate încă întrebări sau exemple de cod pentru această pagină. Dacă ai întâlnit o problemă sau ai un snippet util, adaugă-l mai jos pentru a-i ajuta pe ceilalți.