November 2012
Intermediate to advanced
888 pages
54h 46m
Polish
Należy dodać do siebie wartości elementów tablicy.
Zadanie to można wykonać na dwa sposoby. Jednym z nich jest zwykłe iterowanie po elementach:
collection = [1, 2, 3, 5, 8, 13, 21, 34, 55]
sum = 0
collection.each {|i| sum += i}
sum # => 142
Sumowanie elementów tablicy jest tą operacją, do której idealnie nadaje się specjalny iterator o nazwie inject:
collection = [1, 2, 3, 5, 8, 13, 21, 34, 55]
collection.inject(0) {|sum, i| sum + i} # => 142
Zwróćmy uwagę na to, że używając iteratora inject, nie musimy definiować zmiennej kumulacyjnej (sum) poza obszarem iteracji. W drugim z przykładów argument wywołania metody inject określa wartość początkową tej zmiennej. Zauważmy ...