Rust 程式設計中的 While 和 For 迴圈


眾所周知,Rust 提供了一個 loop 關鍵字來執行一個無限迴圈。但是任何程式語言中要執行迴圈的最傳統方式是使用 while 迴圈或 for range 迴圈。

While 迴圈

while 迴圈用於在某個條件的值為 true 之前執行一段程式碼塊。一旦條件變為 false,迴圈將 break 掉,然後評估迴圈之後的內容。在 Rust 中,這種情況大致相同。

示例

考慮以下所示的示例

演示例項

fn main() {
   let mut z = 1;
   while z < 20 {
      if z % 15 == 0 {
         println!("fizzbuzz");
      } else if z % 3 == 0 {
         println!("fizz");
      } else if z % 5 == 0 {
         println!("buzz");
      } else {
         println!("{}", z);
      }
      z += 1;
   }
}

在以上程式碼中,我們使用了 while 關鍵字,其後面緊跟一個條件 ( z < 20 ) 並且只要該條件的值被評估為 true,while 塊內的程式碼就會執行。

輸出

1
2
fizz
4
buzz
fizz
7
8
fizz
buzz
11
fizz
13
14
fizzbuzz
16
17
fizz
19

範圍取值

Rust 編譯器提供的 for in 建構函式用於遍歷一個 Iterator。我們使用 a..b 表示法,它以步長為 1 返回 [a,b) 。

示例

考慮以下所示的示例

演示例項

fn main() {
   for z in 1..20 {
      if z % 15 == 0 {
         println!("fizzbuzz");
      } else if z % 3 == 0 {
         println!("fizz");
      } else if z % 5 == 0 {
         println!("buzz");
      } else {
         println!("{}", z);
      }
   }
}

輸出

1
2
fizz
4
buzz
fizz
7
8
fizz
buzz
11
fizz
13
14
fizzbuzz
16
17
fizz
19

更新於: 05-4 月-2021

136 次瀏覽

開啟您的事業

完成課程即可獲得認證

開始
廣告