У Очереди ACM есть некоторый хардкор, довольный, плотный, но хороший. Я не считал его в некоторое время все же.
Используйте карту
, чтобы создать новый массив из старого:
arr2 = arr.map {|item| item * 3}
Используйте карту!
, чтобы изменить массив на месте:
arr.map! {|item| item * 3}
Посмотрите, как это работает в Интернете: ideone
Чтобы напрямую изменить массив, используйте arr.map! {| item | товар * 3}
. Чтобы создать новый массив на основе оригинала (что часто предпочтительнее), используйте arr.map {| item | товар * 3}
. На самом деле, я всегда дважды думаю, прежде чем использовать каждый
, потому что обычно есть функция более высокого порядка, такая как map
, select
или inject
, которые делает то, что хочу.