Это то, что заставило меня задуматься несколько раз. В этом примере у меня есть массив, и этот массив имеет 10 значений, которые должны быть разделены запятыми, но после последнего не должно быть commata, поэтому я использовал счетчик:
data = ["john", "james", "henry", "david", "daniel", "jennifer", "ruth", "penny", "robin", "julia"]
counter = 0
count = data.size
sentence = String.new
data.each do |name|
if counter == (count-1)
sentence += name
else
sentence += "#{name}, "
end
counter += 1
end
Но это так грязно, нет ли способа узнать, является ли текущий объект (в данном случае "имя" ) frist или последним на итерации?