Давайте глибше зануримось у методи ітерації Ruby та їх використання.
Слово “ітерація” означає повторення дії кілька разів, і саме це роблять ітератори — вони дозволяють виконувати завдання повторно над колекцією елементів.
Єдина різниця між циклами та ітераторами полягає в тому, що цикли дають більше контролю над повторенням, а ітератори створені для спрощення ітерації через колекції.
Iterator (Ітератор): Цей ітератор повертає всі елементи масиву або хешу. Ітератор each
повертає кожне значення по черзі.
Collect Iterator (Ітератор collect): Цей ітератор повертає всі елементи колекції. Ітератор collect
повертає всю колекцію, незалежно від того, чи є це масивом, чи хешем.
Times Iterator (Ітератор times): У цьому ітераторі цикл працює певну кількість разів. Цикл починається з нуля і виконується до одного меншого за вказане число. Це можна використовувати без змінної ітерації. Ми можемо додати змінну ітерації, використовуючи вертикальні риски навколо ідентифікатора.
Upto Iterator (Ітератор upto): Цей ітератор працює згори вниз. Він включає як верхню, так і нижню змінну в ітерацію.
Downto Iterator (Ітератор downto): Цей ітератор працює знизу вверх. Він включає як верхню, так і нижню змінну в ітерацію.
Step Iterator (Ітератор step): Ітератор step
в Ruby використовується для ітерації, коли користувач має пропускати певний діапазон значень.
Eachline Iterator (Ітератор eachline): Ітератор each_line
в Ruby використовується для ітерації через нові рядки в рядку.
Перекладено з: Unveiling the Variety of Iterators in Ruby