Sobes.tech
Junior

U čemu se sastoji funkcija agregacije u Rubyju?

sobes.tech АИ

Одговор од АИ

Funkcija agregacije u Ruby se primenjuje na kolekciju (na primer, niz ili heš) i smanjuje je na jednu vrednost koristeći definisanu logiku spajanja ili računanja.

Primeri metoda agregacije:

  • sum: Izračunava zbir elemenata kolekcije.
    [1, 2, 3, 4].sum # => 10
    
  • count: Broji broj elemenata (ili onih koji zadovoljavaju uslov).
    [1, 2, 3, 2].count # => 4
    [1, 2, 3, 2].count(2) # => 2
    [1, 2, 3, 2].count { |x| x > 1 } # => 3
    
  • max/min: Pronalazi maksimalni/minimalni element.
    [1, 5, 2, 8].max # => 8
    [1, 5, 2, 8].min # => 1
    
  • reduce/inject: Najfleksibilnija funkcija agregacije, koja primenjuje blok na akumulator i svaki element kolekcije, vraćajući krajnju vrednost akumulatora.
    # Zbir pomoću reduce
    [1, 2, 3, 4].reduce(0) { |sum, number| sum + number } # => 10
    
    # Konkatenacija nizova
    ['a', 'b', 'c'].reduce('') { |result, char| result + char } # => "abc"
    

Suština je u iteraciji kroz kolekciju i postepenom građenju ili računanju krajnjeg, jedinstvenog rezultata. Ovo omogućava efikasnu obradu skupova podataka i dobijanje sažetih pokazatelja.