"Für" vs "jeder" in Ruby

Ich hatte gerade eine kurze Frage zu Loops in Ruby. Gibt es einen Unterschied zwischen diesen beiden Möglichkeiten, eine Sammlung zu durchlaufen?

# way 1
@collection.each do |item|
  # do whatever
end

# way 2
for item in @collection
  # do whatever
end

Nur fragen, ob diese genau gleich sind oder ob es vielleicht einen subtilen Unterschied gibt (möglicherweise, wenn@collection ist null).

Antworten auf die Frage(16)

Ihre Antwort auf die Frage