Rubyのreturnについて

Rubyではreturnを省略することができる。これによってRubyではreturnを省略することが多い。

def hello(name)
"Hello " + name
end
puts hello("Tom")
# Hello Tom

returnを省略すると一番最後に得られる値が戻り値となる

def hello(name)
"Hello return"
"Hello " + name
end
puts hello("Tom")
# Hello Tom

戻り値は最後に得られる値であり、最後の行ではないことに注意すること。

def hello(name = nil)
if name.nil?
"Hello world"
else
"Hello " + name
end
end
puts hello("Tom")
puts hello()
# Hello Tom
# Hello world

無論returnを書いて任意の位置で戻り値を出す事もできる。returnは処理をそこで終了させることができるので、終了のタイミングを制御したい時に利用することが多い。

def hello(name)
return "Hello return"
"Hello " + name
end
puts hello("Tom")
# Hello return

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA