「if…elsif…else…end」判斷式

「if…end」

  
    <span class="com"># 判斷 2 > 1 嗎?</span>
    if 2 > 1  <span class="com">#如果...</span>
      puts true  <span class="com">#就...</span>
    end  <span class="com">#結束</span>
  

「if…else…end」

  
    <span class="com"># 判斷是大於零,還是小於零?</span>
    if a > 0
      puts "a > 0"
    else  <span class="com">#其他</span>
      puts "a < 0"
    end
  

「if…elsif…else…end」

  
    <span class="com"># 判斷是否小於10</span>
    if a > 10
      puts "a > 10"
    elsif a == 10 <span class="com"># 再如果...(判斷時用雙等號)</span>
      puts "a = 10"
    else
      puts "a < 10"
    end
  

結構控制「case」

當if條件太多時,可使用case來判斷條件。

  
    <span class="com"># 判斷a的大小</span>
    case a
    when a > 0
      puts "a > 0"
    when a == 0
      puts "a = 0"
    when a < 0
      puts "a < 0"
    else
      puts "Error!"
    end
  

「unless」判斷式

if...end判斷式相反,unless判斷式為「除非…不然就…」。

  
    <span class="com">判斷「除非小於10,不然就顯示大於10」</span>
    a = 50
    unless a < 10 <span class="com"># 除非...</span>
      puts "a比10還要大" <span class="com"># 不然就...</span>
    else
      puts "a不比10大耶"
    end

    <span class="com"># 執行後會顯示「a比10還要大」</span>