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
廣告