Rust 简明教程

Rust 循环 (Loops)

1. 循环

只要满足指定的条件,循环就能重复执行一段代码块。

循环非常实用,因为它们可以节省时间、减少错误,并且使代码更具可读性。例如,相比于为了打印某些文本而编写 10 次相同的代码行,您可以使用循环让计算机帮您重复执行。

Rust 拥有三种类型的循环:loopwhilefor

2. loop (无限循环)

loop 是 Rust 三种循环类型中最简单的一种。

除非您明确告诉它停止,否则它将永远运行下去:

loop {
  println!("This will repeat forever!");
}

警告: 这个循环永远不会停止!您将需要按下 Ctrl + C 来结束程序。

若要停止循环,请使用 break 关键字:

示例

let mut count = 1;

loop {
  println!("Hello World!");

  if count == 3 {
    break;
  }
  count += 1;
}

示例解析:

  • 此程序将打印 3 次 "Hello World!"。
  • 它使用一个计数器(counter)来跟踪循环已经执行的次数。
  • 计数器从 1 开始(let mut count = 1;)。
  • 每次循环运行时,计数器就会加 1(count += 1;)。
  • 当计数器达到 3 时,循环便会停止。

3. 返回值

您还可以结合 break 关键字并携带一个值来从循环中返回该值。

这使得您可以将循环的结果保存到一个变量中:

示例

let mut count = 1;

let result = loop {
  println!("Hello!");

  if count == 3 {
    break count; // 停止循环并返回数字 3
  }
  count += 1;
};

println!("The loop stopped at: {}", result);

这个循环会一直打印 "Hello!",直到 count 达到 3,随后停止并返回那个数字。

注意: 当你将循环的结果保存到变量时,你必须在代码块末尾放置一个分号(;)。