最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Ruby中的循環(huán)語句的用法教程

 更新時(shí)間:2015年05月12日 10:33:40   投稿:goldensun  
這篇文章主要介紹了Ruby中的循環(huán)語句的用法教程,邏輯循環(huán)語句是每門編程語言的基礎(chǔ),需要的朋友可以參考下

 Ruby中的循環(huán)用于執(zhí)行相同的代碼塊指定的次數(shù)。本章將詳細(xì)介紹Ruby支持的循環(huán)語句。
Ruby while 語句:
語法:

while conditional [do]
   code
end

執(zhí)行代碼當(dāng)條件為true時(shí)。while循環(huán)的條件是代碼中的保留字,換行,反斜杠(\)或一個(gè)分號(hào)隔開。
實(shí)例:

#!/usr/bin/ruby

$i = 0
$num = 5

while $i < $num do
  puts("Inside the loop i = #$i" )
  $i +=1
end

這將產(chǎn)生以下結(jié)果:

Inside the loop i = 0
Inside the loop i = 1
Inside the loop i = 2
Inside the loop i = 3
Inside the loop i = 4

Ruby while 修辭符:
語法:

code while condition

OR

begin
  code
end while conditional

執(zhí)行代碼,當(dāng)條件為true。

如果while 修飾符緊跟一個(gè)begin 語句但是沒有 rescue 或 ensure 子句, 代碼被執(zhí)行前一次條件求值。
實(shí)例:

#!/usr/bin/ruby

$i = 0
$num = 5
begin
  puts("Inside the loop i = #$i" )
  $i +=1
end while $i < $num

這將產(chǎn)生以下結(jié)果:

Inside the loop i = 0
Inside the loop i = 1
Inside the loop i = 2
Inside the loop i = 3
Inside the loop i = 4

Ruby until 語句:

until conditional [do]
   code
end

執(zhí)行代碼當(dāng)條件為false。until 條件語句從代碼分離的保留字,換行符或分號(hào)。
語句:

#!/usr/bin/ruby

$i = 0
$num = 5

until $i > $num do
  puts("Inside the loop i = #$i" )
  $i +=1;
end

這將產(chǎn)生以下結(jié)果:

Inside the loop i = 0
Inside the loop i = 1
Inside the loop i = 2
Inside the loop i = 3
Inside the loop i = 4
Inside the loop i = 5

Ruby until 修辭符:
語法:

code until conditional

OR

begin
   code
end until conditional

執(zhí)行代碼當(dāng)條件為 false。

如果 until 修辭符跟著 begin 語句但沒有 rescue 或 ensure 子句, 代碼一旦被執(zhí)行在條件求值之前。
例子:

#!/usr/bin/ruby

$i = 0
$num = 5
begin
  puts("Inside the loop i = #$i" )
  $i +=1;
end until $i > $num

這將產(chǎn)生以下結(jié)果:

Inside the loop i = 0
Inside the loop i = 1
Inside the loop i = 2
Inside the loop i = 3
Inside the loop i = 4
Inside the loop i = 5

Ruby for 語句:
語法:

for variable [, variable ...] in expression [do]
   code
end

一次執(zhí)行代碼的每個(gè)元素在 in 表達(dá)式。
實(shí)例:

#!/usr/bin/ruby

for i in 0..5
  puts "Value of local variable is #{i}"
end

這里我們定義的范圍 0 .. 5 。因?yàn)樵谡Z句 for i in 0..5 將允許取值的范圍從0到5(含5),這將產(chǎn)生以下結(jié)果:

Value of local variable is 0
Value of local variable is 1
Value of local variable is 2
Value of local variable is 3
Value of local variable is 4
Value of local variable is 5

 for...in 循環(huán)幾乎是完全等同于:

(expression).each do |variable[, variable...]| code end

除了一個(gè)for循環(huán)不創(chuàng)建一個(gè)新的局部變量的范圍。一個(gè)循環(huán)的表情從代碼分離,保留字,一個(gè)換行符,或分號(hào)。
例子:

#!/usr/bin/ruby

(0..5).each do |i|
  puts "Value of local variable is #{i}"
end

這將產(chǎn)生以下結(jié)果:

Value of local variable is 0
Value of local variable is 1
Value of local variable is 2
Value of local variable is 3
Value of local variable is 4
Value of local variable is 5

Ruby break 語句:
語法:

break

終止大多數(shù)內(nèi)部的循環(huán)。終止塊內(nèi)的方法返回nil如果調(diào)用的方法與相關(guān)塊。
實(shí)例:

#!/usr/bin/ruby

for i in 0..5
  if i > 2 then
   break
  end
  puts "Value of local variable is #{i}"
end

這將產(chǎn)生以下結(jié)果:

Value of local variable is 0
Value of local variable is 1
Value of local variable is 2

Ruby next 語句:
語法:

next

跳轉(zhuǎn)到最內(nèi)部循環(huán)的下一次迭代。如果調(diào)用塊一個(gè)塊內(nèi)終止執(zhí)行(帶 yield 或調(diào)用返回 nil )。
例子:

#!/usr/bin/ruby

for i in 0..5
  if i < 2 then
   next
  end
  puts "Value of local variable is #{i}"
end

這將產(chǎn)生以下結(jié)果:

Value of local variable is 2
Value of local variable is 3
Value of local variable is 4
Value of local variable is 5

Ruby redo 語句:
語法:

redo

會(huì)重新啟動(dòng)啟動(dòng)這個(gè)最內(nèi)部的循環(huán)迭代,而不檢查循環(huán)條件。

會(huì)重新啟動(dòng) yield or call ,如果一個(gè)塊內(nèi)調(diào)用。
例子:

#!/usr/bin/ruby

for i in 0..5
  if i < 2 then
   puts "Value of local variable is #{i}"
   redo
  end
end

這將產(chǎn)生以下結(jié)果,將執(zhí)行無限循環(huán):

Value of local variable is 0
Value of local variable is 0
............................

Ruby retry 語句:
語法:

retry

如果 retry 表達(dá)出現(xiàn)在 rescue 子句,則從開始重新開始。

begin
  do_something # exception raised
rescue
  # handles error
  retry # restart from beginning
end

如果出現(xiàn)重試迭代,塊,或體內(nèi)的表達(dá),重新啟動(dòng)迭代調(diào)用。迭代器的參數(shù)條件將重新計(jì)算。

for i in 1..5
  retry if some_condition # restart from i == 1
end

實(shí)例:

#!/usr/bin/ruby

for i in 1..5
  retry if i > 2
  puts "Value of local variable is #{i}"
end

這將產(chǎn)生以下結(jié)果,將進(jìn)入無限循環(huán):

Value of local variable is 1
Value of local variable is 2
Value of local variable is 1
Value of local variable is 2
Value of local variable is 1
Value of local variable is 2
............................

相關(guān)文章

最新評(píng)論

无为县| 克什克腾旗| 右玉县| 怀来县| 广饶县| 涞源县| 卢湾区| 宁阳县| 赤水市| 宁夏| 大埔县| 镇康县| 克拉玛依市| 安福县| 雅江县| 同仁县| 泾川县| 吴堡县| 平远县| 聊城市| 泰和县| 闸北区| 呼图壁县| 大名县| 林周县| 宜州市| 亳州市| 怀仁县| 甘孜县| 北辰区| 井研县| 嘉荫县| 长武县| 巢湖市| 石渠县| 苏尼特右旗| 阜平县| 通许县| 都兰县| 克山县| 布拖县|