freeCodeCamp/guide/chinese/rust/loops/index.md

1.8 KiB
Raw Blame History

title localeTitle
Loops 循环

循环

在Rust中有三种本机循环机制 loop whilefor

loop无限重复

在Rust中 loop结构将不断地执行无限代码块(或者直到您明确告诉它停止)。

这是一个使用loop来连续向终端打印“再次”一词的示例程序:

fn main() { 
    loop { 
        println!("again!"); 
    } 
 } 

条件循环与while

除非我们为loop检查引入某种停止条件否则上述机制不是很有用。幸运的是Rust有一个内置的循环结构称为while ,可以用来连续执行一段代码,同时条件成立。

这是一个使用while从5开始倒计时的示例程序

fn main() { 
    let mut number = 5; 
 
    while number != 0 { 
        println!("{}", number); 
        number = number - 1; 
    } 
 } 

这里运行代码。

迭代通过集合与for

在某些情况下,您可能希望迭代并操作集合的元素(例如数组)。虽然您可以使用while循环和索引变量来访问每个元素但Rust提供了for循环以使此操作更容易。

这是一个示例程序,使用for将数组中的每个数字打印到终端:

fn main() { 
    let collection = [15, 7, 2, 6, 9]; 
 
    for element in collection.iter() { 
        println!("the value is: {}", element); 
    } 
 } 

这里运行代码。

与C ++中的迭代器非常相似, .iter()函数返回collection的迭代器,然后可以循环访问每个element 。有关更多信息,请访问有关控制流的Rust文档。