如何在Ruby中使用循環(huán)
計算機程序通常必須多次執(zhí)行操作,而不僅僅是一次。例如,打印所有新電子郵件的程序需要從列表中打印每個電子郵件,而不僅僅是一封電子郵件。為此,使用稱為循環(huán)的構造。循環(huán)將重復其中的語句多次,直到滿足某個條件為止。
While loop
這些循環(huán)的第一種類型是一個循環(huán)。只要條件語句保持為true,循環(huán)將執(zhí)行其中包含的所有語句。在這個例子中,循環(huán)不斷地將變量i的值增加一個。只要條件語句i為真,循環(huán)將繼續(xù)執(zhí)行語句i+=1,該語句將為變量添加一個。
#!/usr/bin/env ruby
i=0
科普期刊,而ii+=1
end
放置i
直到循環(huán)
直到循環(huán)幾乎與while循環(huán)相同,只是只要條件語句false,它們就會循環(huán)。while循環(huán)將在條件為真時循環(huán),直到循環(huán)將循環(huán)直到條件為真。這個例子是while-loop例子的功能等價物,除了使用直到循環(huán),直到i==10。變量遞增1,直到其值等于10。
#!/usr/bin/env ruby
i=0
直到i==10
i+=1
end
放置i
循環(huán)"紅寶石路"
盡管在Ruby程序中使用了更傳統(tǒng)的前后循環(huán),但基于閉包的循環(huán)更為常見。它不是'甚至有必要了解閉合是什么或它們如何工作以使用這些循環(huán);事實上,它們'盡管在引擎蓋下有很大不同,但它們被重新視為正常循環(huán)。
時間循環(huán)
times循環(huán)可用于包含數字或數字的任何變量ber本身。在下面的示例中,第一個循環(huán)運行3次,第二個循環(huán)運行,但用戶輸入多次。如果輸入12,它將運行12次。您'請注意,times循環(huán)使用點語法(3.times do),而不是while-and-until循環(huán)使用的關鍵字語法。這與times loop如何在引擎蓋下工作有關,但它和#39;以相同的方式使用,直到使用loop。
#!/usr/bin/env ruby
3.TIME do
puts"將打印3次"
end
print"輸入數字:&35; 34;
num=gets.chomp.to?我
次數做
puts"紅寶石很棒!"
結束
The Each Loop
each循環(huán)可能是所有循環(huán)中最有用的。每個循環(huán)將獲取一個變量列表,并為每個變量運行一組語句。由于幾乎所有的計算任務都使用變量列表,并且必須對列表中的每個變量做些事情,因此每個循環(huán)都是Ruby代碼中最常見的循環(huán)。這里要注意的一點是循環(huán)'s語句塊的參數。循環(huán)正在查看的當前變量的值被分配給管道字符中的變量名稱,在示例中為| n |。循環(huán)運行的第一次,n變量將等于"Fred,"循環(huán)運行的第二次將等于"Bob"等等。
#!/usr/bin/env ruby
#名稱列表
名稱=["Fred","Bob","Jim"]
姓名做| n |
放置"Hello#{n}"
結束