fugafuga.write

日々のログ



Ruby 2.x.x 入門 - 繰り返し処理 -

ループ処理について

繰り返し処理の種類

  • times メソッド
  • for 文
  • while 文
  • until 文
  • each メソッド
  • loop メソッド

times メソッド

4.times do
   puts "loop"
end

[出力]
loop
loop
loop
loop

ループ回数を知ることも可能。

4.times do |i|
  pry(main)*   p i
end

[出力]
0
1
2
3

for 文

array = ["one", "two", "three"]
for item in array
  p item
end

[出力]
"one"
"two"
"three"

while 文

条件を満たしている間、ループする

i = 0
while i < 4
   puts "#{i}回目"
   i += 1
end

[出力]
0回目
1回目
2回目
3回目

until 文

条件を満たしていない間、ループする

i = 0
until i == 10
  p i
  i += 1
end

[出力]
0
1
2
3
4
5
6
7
8
9

each メソッド

array = ["one", "two", "three"]
array.each do |item|
  puts item
end

[出力]
one
two
three

loop メソッド

終了条件がないループ

loop do
  puts "waaaaaaaaa"
end

[出力]
waaaaaaaaa
...
(無限ループ)

ループの制御命令について

ループ処理を途中で抜けたりする時に使う。

  • break
  • next
  • redo

break

ループから抜け出す

next

Cで言う continue と同じ
next 以降の処理をせずに次のループを開始する

redo

redo 以降の処理をせずに現在と同じループを開始する
※ redo 以前の処理によっては無限ループになってしまうので気をつける。

まとめ

基本的には、
・回数の決まった繰り返し → times
・その他の繰り返し → while と each
のように使うのが好ましいっぽい。


]

たのしいRuby 第4版

たのしいRuby 第4版

作りながら学ぶRuby入門 第2版

作りながら学ぶRuby入門 第2版