Bird
Raised Fist0
Rubyprogramming~5 mins

Each as the primary iterator in Ruby - Cheat Sheet & Quick Revision

Choose your learning style10 modes available
Recall & Review
beginner
What does the each method do in Ruby?
The each method goes through each item in a collection like an array or hash, one by one, and runs the code inside the block for each item.
Click to reveal answer
beginner
How do you write a simple each loop for an array [1, 2, 3]?
You write:
[1, 2, 3].each do |number|
  puts number
end
This prints each number on its own line.
Click to reveal answer
intermediate
Can each be used with hashes? How?
Yes! You can use each with hashes to get both key and value. For example:
{a: 1, b: 2}.each do |key, value|
  puts "#{key}: #{value}"
end
Click to reveal answer
intermediate
What is the return value of each?
The each method returns the original collection it was called on, unchanged.
Click to reveal answer
beginner
Why is each called the primary iterator in Ruby?
Because each is the most common and basic way to loop through collections in Ruby. Many other methods build on or use each internally.
Click to reveal answer
What does the each method yield to the block when used on an array?
AThe entire array
BThe index of each element
CNothing
DEach element of the array
What will this code print?
["a", "b", "c"].each { |x| puts x.upcase }
AA B C
Ba b c
Cabc
DError
When using each on a hash, what does the block receive?
ABoth key and value as two block parameters
BOnly the values
COnly the keys
DAn array of keys
What does each return after finishing iteration?
AThe last element processed
BThe original collection
Cnil
DThe number of elements
Which of these is true about each in Ruby?
AIt modifies the original collection
BIt returns a new array
CIt is the primary iterator method
DIt only works with arrays
Explain how the each method works in Ruby and give an example with an array.
Think about how you tell Ruby to do something for every item in a list.
You got /4 concepts.
    Describe how you use each with a hash and what the block receives.
    Remember a hash has pairs, so the block gets two things.
    You got /3 concepts.

      Practice

      (1/5)
      1. What does the each method do in Ruby when used on an array?
      easy
      A. It returns a new array with modified items.
      B. It runs a block of code once for every item in the array.
      C. It changes the array by removing items.
      D. It sorts the array in ascending order.

      Solution

      1. Step 1: Understand the purpose of each

        The each method is used to run a block of code for every item in a collection like an array.
      2. Step 2: Check what each does to the array

        It does not change or sort the array; it simply processes each item one by one.
      3. Final Answer:

        It runs a block of code once for every item in the array. -> Option B
      4. Quick Check:

        each runs code on each item [OK]
      Hint: Remember: each processes items, does not change array [OK]
      Common Mistakes:
      • Thinking each modifies the array
      • Confusing each with methods like map
      • Assuming each returns a new array
      2. Which of the following is the correct syntax to use each on an array numbers to print each number?
      easy
      A. each numbers { |num| puts num }
      B. numbers.each do num puts num end
      C. numbers.each { |num| puts num }
      D. numbers.each |num| puts num

      Solution

      1. Step 1: Identify correct block syntax with each

        The correct syntax uses each followed by a block with { |variable| ... } or do |variable| ... end.
      2. Step 2: Check each option

        numbers.each { |num| puts num } uses numbers.each { |num| puts num } which is correct. Others have syntax errors or wrong order.
      3. Final Answer:

        numbers.each { |num| puts num } -> Option C
      4. Quick Check:

        Correct block syntax = numbers.each { |num| puts num } [OK]
      Hint: Use each { |item| ... } or each do |item| ... end [OK]
      Common Mistakes:
      • Writing each numbers instead of numbers.each
      • Missing block delimiters like braces or do-end
      • Not using pipes | | around block variable
      3. What is the output of this Ruby code?
      fruits = ['apple', 'banana', 'cherry']
      fruits.each { |fruit| puts fruit.upcase }
      medium
      A. APPLE BANANA CHERRY
      B. apple banana cherry
      C. ['APPLE', 'BANANA', 'CHERRY']
      D. Error: undefined method upcase for fruit

      Solution

      1. Step 1: Understand what each does with puts fruit.upcase

        The each method runs the block for each fruit, printing the uppercase version.
      2. Step 2: Check output line by line

        It prints 'APPLE', then 'BANANA', then 'CHERRY' each on a new line.
      3. Final Answer:

        APPLE BANANA CHERRY -> Option A
      4. Quick Check:

        each prints uppercase fruits [OK]
      Hint: Remember puts prints each item on a new line [OK]
      Common Mistakes:
      • Thinking each returns a new array
      • Expecting lowercase output
      • Confusing puts with returning a list
      4. What is wrong with this Ruby code snippet?
      items = [1, 2, 3]
      items.each do item
        puts item * 2
      end
      medium
      A. Array items is empty
      B. Using do instead of braces is invalid
      C. Cannot multiply numbers inside each
      D. Missing pipes around block variable: should be |item|

      Solution

      1. Step 1: Check block variable syntax in each do block

        When using do with each, the block variable must be inside pipes: do |item|.
      2. Step 2: Identify the error

        The code misses pipes around item, causing a syntax error.
      3. Final Answer:

        Missing pipes around block variable: should be |item| -> Option D
      4. Quick Check:

        Block variables need pipes | | [OK]
      Hint: Always put block variables inside | | with each do [OK]
      Common Mistakes:
      • Omitting pipes around block variables
      • Thinking do is invalid with each
      • Assuming multiplication inside each is wrong
      5. Given a hash scores = { alice: 10, bob: 15, carol: 12 }, how can you use each to print each name and score in the format Name: Score?
      hard
      A. scores.each { |name, score| puts "#{name.capitalize}: #{score}" }
      B. scores.each { |score, name| puts "#{name}: #{score}" }
      C. scores.each { |name| puts "#{name}: #{score}" }
      D. scores.each { |name, score| puts "#{score.capitalize}: #{name}" }

      Solution

      1. Step 1: Understand each on a hash

        When using each on a hash, the block receives two variables: key and value.
      2. Step 2: Match variables and format output

        The key is the name (symbol), value is the score. Use name.capitalize to print the name nicely.
      3. Final Answer:

        scores.each { |name, score| puts "#{name.capitalize}: #{score}" } -> Option A
      4. Quick Check:

        Hash each uses key, value pairs [OK]
      Hint: Hash each block gets two vars: key and value [OK]
      Common Mistakes:
      • Swapping key and value variables
      • Using only one block variable for hash
      • Trying to capitalize a number
      Recommended

      Ready to prove it?

      Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

      10 questions~5 mineasy hard