Rust的流程控制分为:

  • 条件控制
  • 循环
  • 模式匹配
  • 错误处理

    条件控制

    关键字if/else if /else

    使用:
    if 条件 {}
    else if {
    }
    else {
    }
    注意:if的条件不需要()。

    循环

    死循环建议用loop。
    其他使用while.

    模式匹配

    使用关键字match。
    macth的使用分三部分。

  • mactch 解析的对象

  • 分支
  • 分支的代码块。

如下:

  1. let a_number = Option::Some(10);
  2. match a_number {
  3. Some(x) if x <= 5 => println!("0 to 5 num = {}", x),
  4. Some(x @ 6..=10) => println!("6 to 10 num = {}", x),
  5. None => panic!(),
  6. // all other numbers
  7. _ => panic!(),
  8. }


上面中 a_number 是macth的对象,Some(x) if x <= 5 是分支。可以注意到,他是可以接条件判定。=>后符合分支的代码块。支持{}包裹的形式。