Рассмотрите массив Ruby с много элементов.array.select n элементов не более
Я хочу изменить итерацию по массиву и выбрать первые n результатов, для которых данный блок возвращает true.
E.g.
seniors = persons.reverse.select do |person|
person.age > 60
end
Это нормально, однако он собирает всех пожилых людей, а не n старших в лучшем случае. Каков наилучший способ досрочно прекратить итерацию, когда были собраны n результатов?
является пожилым = seniors.first (п) вариант, вместо преждевременного прекращения? –
Вы можете просто вызвать '.take (n)' после 'end' –
@ user2864740, это неверно. Для массива '[1,2,3,61] .take (3)' будет исключать '61', который должен быть включен в результирующий набор –