Ruby簡明教程之迴圈語句介紹_ruby專題

來源:互聯網
上載者:User

迴圈結構在程式設計語言中是不可或缺的,所以Ruby中的迴圈也有其自訂的規則。

而我們關注迴圈結構,要知道兩個因素:1) 迴圈的條件;2) 迴圈執行的內容

Ruby有一些方式來實現迴圈結構體:

1. times方法

在前面已經有提到過了,文法如下:

複製代碼 代碼如下:

迴圈次數.times do                    迴圈次數.times {
      重複執行的動作                          重複執行的動作              
end                                               }

#也可以在times模組中加入變數

5.times { |i|
    print "This is the", i+1, " time. \n"
}

# i變數是從0開始計算的

2. for 語句

複製代碼 代碼如下:

文法:
for 變數 in 開始數值..結束數值 do
   反覆執行的動作
end

# do是可以省略的

from = 0
to = 20
sum = 0
for i in from..to
   sum += 1
end

文法:
for 變數 in 對象
  反覆執行的動作
end

names = ["Windy", "Cindy", "Jack", "Hugo"]
for name in names
   print name, " likes Ruby. \n"
end


第二個文法的for語句,與java中的for each語句非常類似,for (i in list?) {...}

3. while 語句

while語句與JAVA中也是類似的

複製代碼 代碼如下:

文法:
while 條件 do
   反覆執行的動作
end

a = 1
sum = 0
while a < 10 do
   sum += a
   i += a
end

4. until 語句
其文法與while語句類似,只是只有條件不符合的時候,才會反覆執行迴圈

複製代碼 代碼如下:

文法:
until 條件 do
    反覆執行的動作
end
# do可以省略

sum = 0
until sum > 50
   sum += 1
end
print sum

# 以上until迴圈可以轉換成下面的while迴圈
while !(sum > 50)
   sum += 1
end

5. each 方法
在前面已經提到過這個方法了,這裡就簡要記錄下文法

複製代碼 代碼如下:

對象.each { |變數|

     想要反覆執行的動作

}

6. loop方法

它是一種沒有結束條件的方法,只是不斷進行迴圈處理,樣本如下:

複製代碼 代碼如下:

loop {
   print "Ruby"
}

迴圈的控制:

主要有如下關鍵字:break,next,redo;而在java中,則有break,continue,return

       命令 用途
break 停止動作,馬上跳出迴圈
next 直接跳到下一個迴圈
redo 以相同的條件重新執行這一次迴圈


總結:當次數固定時,使用times方法比較好,而其他大部分迴圈幾乎都可以使用while和each方法。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.