探究 if 作为表达式的赋值技巧,掌握 loop 的返回值特性,以及在多层嵌套循环中使用生命周期标签精准 break。
1. if 作为表达式使用
在 Rust 中,if 是一个表达式,可以直接用于变量初始化(类似其他语言的三元运算符):
let condition = true;
let number = if condition { 5 } else { 6 };
2. loop 循环带返回值与循环标签
loop 循环可以通过 break 语句携带返回值,在重试网络连接或等待任务时极其优雅:
let mut counter = 0;
let result = loop {
counter += 1;
if counter == 10 {
break counter * 2;
}
};
// 循环标签 (Loop Labels)
'outer: loop {
'inner: loop {
break 'outer; // 直接跳出外层循环
}
}