if/else
使用 if
-else
进行分支与其他语言类似。与许多其他语言不同的是,布尔条件不需要用括号括起来,并且每个条件后面都跟着一个代码块。if
-else
条件语句是表达式,并且所有分支必须返回相同的类型。
fn main() { let n = 5; if n < 0 { print!("{} is negative", n); } else if n > 0 { print!("{} is positive", n); } else { print!("{} is zero", n); } let big_n = if n < 10 && n > -10 { println!(", and is a small number, increase ten-fold"); // This expression returns an `i32`. 10 * n } else { println!(", and is a big number, halve the number"); // This expression must return an `i32` as well. n / 2 // TODO ^ Try suppressing this expression with a semicolon. }; // ^ Don't forget to put a semicolon here! All `let` bindings need it. println!("{} -> {}", n, big_n); }