跳至主要內容

控制流

ColorSky小于 1 分钟笔记Rust

if 表达式

  • 条件必须为 bool 值
  • 与条件相关联的代码块叫做分支(arm)
  • 可选的,在后边加上一个else表达式
  • 如果使用了多于一个else if,那么最好使用match来重构代码
  • *: if 是表达式,可以用 if 表达式来运算
    let condition = true;
    let number = if condition {5} else {6};//此时number被赋值 5
    //let number = if condition {5} else {"6"};
    //这样是错误的,rust必须知道number的确切类型
    

循环

loop, m

  • 反复执行一段代码直到你喊停(break)
let number = 1;
loop {
    number += 1;
    if number == 5 { break }
}
print!("{}", number);

while

  • 每次执行循环体前都判断一次条件
let mut number = 3;
while number != 0 {
    print!("{}", number);
    number -= 1;
}

for

  • 遍历集合
  • 可以用loop或者while遍历集合,但是效率低而且易错
let a = [10, 20, 30, 40];
for i in a.iter() {
    print!("The a's value is {}", i);
}
  • Range
    • 标准库提供
    • 指定一个开始数字和结束数字,Range 可以生成它们之间的数字(不包含结束)
    • rev 方法可以反转 Rangem