控制流
根据条件是否为真来决定是否执行某些代码,或根据条件是否为真来重复运行一段代码,是大部分编程语言的基本组成部分。Rust 代码中最常见的用来控制执行流的结构是 if 表达式和循环。
if 表达式
if
表达式允许根据条件执行不同的代码分支。你提供一个条件并表示
- 如果条件满足,运行这段代码;
- 如果条件不满足,不运行这段代码。
例子1
错误的使用
Rust 期望一个 bool
却得到了一个整数。不像 Ruby 或 JavaScript 这样的语言,Rust 并不会尝试自动地将非布尔值转换为布尔值。你必须自始至终显式地使用布尔值作为 if
的条件。
正确
fn main() {let number = 3;if number != 0 {println!("number was something other than zero");}
}
if表达式可以用在等于右侧
因为 if
是一个表达式,我们可以在 let
语句的右侧使用它来将结果赋值给一个变量
fn main() {let condition = true;let number = if condition { 5 } else { 6 };println!("The value of number is: {}", number);
}