条件分岐

if

=begin
条件判断
=end
 
# 値をコマンドライン引数から取得
aaa = ARGV[0]
 
# 条件で処理を記述
if aaa == "10" then
  # 条件1
  print("test1\n")
 
elsif aaa == "20" then
  # 条件2
  print("test2\n")
 
else
  # 上記以外
  print("test3\n")
 
end
 
 
条件に一致した場合処理を行う
if文の場合はthenを省略可能

if修飾子

=begin
if修飾子
=end
 
# 値設定
aaa = ARGV[0]
 
#右辺の条件if aaa == 10の場合は左記の命令を実行
print("test-if") if aaa == "10"
 
 
右のif文で記述した条件に一致しないとif文の左の構文の処理を行えない


unless

=begin
unless文
条件に一致しない場合を真として処理を行う
=end
 
# コマンドライン引数を取得
aaa = ARGV[0]
 
unless aaa == "10" then
  print("testUnless\n")
 
else
  print("testMatch\n")
 
end
 
 
条件に一致しない場合の処理

unless修飾子

=begin
unless修飾子
条件に一致しない場合左辺の処理を実行
=end
 
# コマンドライン引数より値を取得
aaa = ARGV[0]
 
# aaa != "10"の場合に実行
print("dataUnMatch") unless aaa == "10"
 
 

case

=begin
他分岐条件
=end
 
# コマンドライン引数を取得
aaa = ARGV[0]
 
# 数値変換
bbb = aaa.to_i
 
#他分岐1(範囲指定)
case bbb
when 0 .. 10            # 範囲指定
  print("aaa\n")
 
when 11 .. 20           # 範囲指定
  print("bbb\n")
 
else
  print("ccc\n")
 
end
 
#他分岐2(条件指定)
ccc = bbb
case ccc
when 10, 20 then        # if指定
  print("ccc\n")
 
when 30, 40 then        # if指定
  print("ddd\n")
 
else
  print("eee\n")
 
end
 
#他分岐3(配列展開)
ddd1 = [10, 11, 12] 
ddd2 = [20, 21, 22]
 
case ccc
when *ddd1              # whenに*配列変数を指定することで配列を展開
  print("case3-1\n")
 
when *ddd2              # whenに*配列変数を指定することで配列を展開
  print("case3-2\n")
 
else
  print("case3-3\n")
 
end
 
 
※値の範囲指定
※カンマを使用したor指定
※配列を展開することも可能


最終更新:2011年04月23日 08:01