Ruby – if else、case、unless~RUBY入門〜RUBYTUTORIAL〜

スポンサーリンク

本当にわからないとこがあった場合一人では解決できません。
『teratail』とはエンジニア特化型のQ&Aサイトです。 すべてのエンジニアさんが抱えている悩みを共有して 解決するための質問サイトです
無料なのでまずは登録して使ってみてください。メールアドレスだけで登録可能です ----------------------------------------------------------------------------------------


Ruby – if else、case、unless~RUBY入門〜RUBYTUTORIAL〜


Ruby if … elseステートメント


構文

if conditional [then]
   code...
[elsif conditional [then]
   code...]...
[else
   code...]
end

falsenilの値はfalseで、その他はすべてtrueです。

条件が真であればコードを実行します。場合は、条件が真ではありません、コード else句で指定が実行されます。

if式の条件は、予約語によってコードから分離され、次に、改行、またはセミコロン。

#!/usr/bin/ruby

x = 1
if x > 2
   puts "x は 2 より大きい"
elsif x <= 2 and x!=0
   puts "x は 1"
else
   puts "わかりません。"
end
x は 1

Ruby ifモディファー


構文

code if condition

条件が真であればコードを実行します。

#!/usr/bin/ruby

$debug = 1
print "debug\n" if $debug

これにより、次の結果が生成されます。

debug

ステートメント以外のRuby


構文

unless conditional [then]
   code
[else
   code ]
end

conditionalがfalseの場合にコードを実行しますconditionalがtrueの場合、else節で指定されたコードが実行されます。

#!/usr/bin/ruby

x = 1 
unless x>=2
   puts "x は 2 より少ない"
 else
   puts "x は 2 より大きい"
end

これにより、次の結果が生成されます。

x は 2 より少ない

修飾子以外のRuby


構文

code unless conditional

conditionalがfalseの場合にコードを実行します

#!/usr/bin/ruby

$var =  1
print "1 -- Value is set\n" if $var
print "2 -- Value is set\n" unless $var

$var = false
print "3 -- Value is set\n" unless $var

これにより、次の結果が生成されます。

1 -- Value is set
3 -- Value is set

Ruby caseステートメント


構文

case expression
[when expression [, expression ...] [then]
   code ]...
[else
   code ]
end

caseで指定されたと===演算子で指定された式を比較し、一致するwhen句のコードを実行します

表現するとき句で指定された物が、左のオペランドとして評価されます。when節が一致しない場合、caseelse節のコードを実行します。

case expr0
when expr1, expr2
   stmt1
when expr3, expr4
   stmt2
else
   stmt3
end

基本的には以下のようになります –

_tmp = expr0
if expr1 === _tmp || expr2 === _tmp
   stmt1
elsif expr3 === _tmp || expr4 === _tmp
   stmt2
else
   stmt3
end

#!/usr/bin/ruby

$age =  5
case $age
when 0 .. 2
   puts "赤ちゃん"
when 3 .. 6
   puts "お子ちゃま"
when 7 .. 12
   puts "子供"
when 13 .. 18
   puts "ヤング"
else
   puts "大人"
end

これにより、次の結果が生成されます。

お子ちゃま

前のページ⑥Ruby – コメント~RUBY入門〜RUBYTUTORIAL〜

次のページ

スポンサーリンク

プログラミングは独学からは挫折の可能性が高いです。まずは無料体験ができる
コードキャンプが本当におすすめ。無料体験でわからないところを聞きましょう。
転職補助つき。カリキュラム終了後に転職紹介をしてくれます。