您好,登錄后才能下訂單哦!
本文小編為大家詳細介紹“Ruby判斷語句有哪些”,內容詳細,步驟清晰,細節處理妥當,希望這篇“Ruby判斷語句有哪些”文章能幫助大家解決疑惑,下面跟著小編的思路慢慢深入,一起來學習新知識吧。
語法
if conditional [then] code... [elsif conditional [then] code...]... [else code...] end
if 表達式用于條件執行。值 false 和 nil 為假,其他值都為真。請注意,Ruby 使用 elsif,不是使用 else if 和 elif。 如果 conditional 為真,則執行 code。如果 conditional 不為真,則執行 else 子句中指定的 code。 通常我們省略保留字 then 。若想在一行內寫出完整的 if 式,則必須以 then 隔開條件式和程式區塊。如下所示:
if a == 4 then a = 7 end
實例
#!/usr/bin/ruby# -*- coding: UTF-8 -*-x=1if x > 2 puts "x 大于 2"elsif x "x 是 1"else puts "無法得知 x 的值"end
以上實例輸出結果:
x 是 1
語法
code if condition
if修飾詞組表示當 if 右邊之條件成立時才執行 if 左邊的式子。即如果 conditional 為真,則執行 code。
實例
#!/usr/bin/ruby$debug=1print "debug\n" if $debug
以上實例輸出結果:
debug
語法
unless conditional [then] code [else code ] end
unless式和 if式作用相反,即如果 conditional 為假,則執行 code。如果 conditional 為真,則執行 else 子句中指定的 code。
實例
#!/usr/bin/ruby# -*- coding: UTF-8 -*-x=1unless x>2 puts "x 小于 2"else puts "x 大于 2"end
以上實例輸出結果為:
x 小于 2
語法
code unless conditional
如果 conditional 為假,則執行 code。
實例
#!/usr/bin/ruby# -*- coding: UTF-8 -*-$var = 1print "1 -- 這一行輸出\n" if $varprint "2 -- 這一行不輸出\n" unless $var$var = falseprint "3 -- 這一行輸出\n" unless $var
以上實例輸出結果:
1 -- 這一行輸出3 -- 這一行輸出
語法
case expression[when expression [, expression ...] [then] code ]...[else code ]end
case先對一個 expression 進行匹配判斷,然后根據匹配結果進行分支選擇。 它使用 ===運算符比較 when 指定的 expression,若一致的話就執行 when 部分的內容。 通常我們省略保留字 then 。若想在一行內寫出完整的 when 式,則必須以 then 隔開條件式和程式區塊。如下所示:
when a == 4 then a = 7 end
因此:
case expr0when expr1, expr2 stmt1when expr3, expr4 stmt2else stmt3end
基本上類似于:
_tmp = expr0if expr1 === _tmp || expr2 === _tmp stmt1elsif expr3 === _tmp || expr4 === _tmp stmt2else stmt3end
實例
#!/usr/bin/ruby# -*- coding: UTF-8 -*-$age = 5case $agewhen 0 .. 2 puts "嬰兒"when 3 .. 6 puts "小孩"when 7 .. 12 puts "child"when 13 .. 18 puts "少年"else puts "其他年齡段的"end
以上實例輸出結果為:
小孩
當case的”表達式”部分被省略時,將計算第一個when條件部分為真的表達式。
foo = falsebar = truequu = falsecasewhen foo then puts 'foo is true'when bar then puts 'bar is true'when quu then puts 'quu is true'end# 顯示 "bar is true"
讀到這里,這篇“Ruby判斷語句有哪些”文章已經介紹完畢,想要掌握這篇文章的知識點還需要大家自己動手實踐使用過才能領會,如果想了解更多相關內容的文章,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。