Ruby-條件判斷

=begin
      條件判斷語句包括if語句,unless語句,case語句,
=end

#if 語句
=begin
if 條件 then
  處理1
elsif 條件2 then
  處理2
else
  處理3
end
=end
a = 10
b = 20
if a > b
  puts "a bigger than b"
elsif a < b
  puts "a smaller than b"
else
  puts "a is equal to b"
end
puts "a bigger than b" if a > b

#unless 語句,與if語句相反,條件判斷爲假的時執行處理
=begin
unless 條件
  處理1
else
  處理2
end
=end
a = 10
b = 20
unless a > b
  puts "a smaller/same as than b"
end

#case 語句,適用於比較的對象只有一個的時候,根據這個對象的值不同,執行不同的處理;when可以一次指定多個值
=begin
case 比較對象
when 值1 then
  處理1
when 值2 then
  處理2
when 值3 then
  處理3
else
  處理4
end
=end
tags = ["A", "IMG", "PRE"]
tags.each do |word|
  case word
  when "P", "A", "I", "B", "BLOCKQUOTE"
    puts "#{word} has child."
  when "IMG", "BR"
    puts "#{word} has child."
  else
    puts "#{word} cannoot be used"
  end
end

array = ["a", 1, nil]
array.each do |word|
  case word
  when String
    puts "the word is a String"
  when Numeric 
    puts "the word is a Numeric"
  else
    puts "other words are Something"
  end
end

text.each_line do |line|
  case line
  when /^From:/i
    puts "find a sender"
  when /^To:/i
    puts "find a receiver"
  when /^$/
    puts "resolution are finnished"
    exit
  else
    break
  end
end


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章