5. 繰り返し(2)
2012/11/14 シナジーマーケティング(株) 河野 健太朗
5.4 for
配列などに対して繰り返しの操作を行いたいときに使用します。
for value in list [do] # listの要素の数だけ繰り返される end
# coding: utf-8 list = [1, 2, 3, 4, 5] for number in list puts number end
> ruby for_test.rb 1 2 3 4 5
do は省略可能です。
5.5 脱出
break next redoの3つは脱出のための構文で、繰り返しを中断したりする際に使用します。
- break 繰り返し処理を中断し、以降の繰り返しを実行しません。
- next 繰り返し処理を中断し、次の繰り返し処理を行います。
- redo 繰り返し処理を中断し、再度繰り返し処理を行います。
# coding: utf-8
list = [1, 2, 3, 4, 5]
list.each do |number|
if number == 3
break
end
puts number
end
puts "===================="
list.each do |number|
if number == 3
next
end
puts number
end
puts "===================="
counter = 0
list.each do |number|
puts "number is #{number}"
puts "counter is #{counter}"
puts "\r\n"
counter += 1
if counter > 10
break
end
if number == 4
redo
end
end
> ruby loop_control_constructs_test.rb 1 2 ==================== 1 2 4 5 ==================== number is 1 counter is 0 number is 2 counter is 1 number is 3 counter is 2 number is 4 counter is 3 number is 4 counter is 4 number is 4 counter is 5 number is 4 counter is 6 number is 4 counter is 7 number is 4 counter is 8 number is 4 counter is 9 number is 4 counter is 10

