Rust 从入门到摔门而出门 (三) 控制流,if判断和for循环
if表达式
Rust的if和其他语言 一致,根据条件执行不同的代码分支。
fn main(){
let num = 3;
if num < 10 {
println!('小于 10');
} else {
println!('大于 10');
}
}
另外注意在 Rust中 if 判断条件 必须是 布尔(Boolean), 并不会像JS等语言会进行隐式转换成布尔。
else if 处理多条件
fn main(){
let num = 2;
if num == 5 {
println!('等于 5');
} else if num == 10 {
println!('等于 10');
}else {
println!('其他值')
}
}
在声明变量中也可以使用 if
fn main(){
let condition = true;
let num = if condition { 100 } else { 0 };
println!('num: {num}');
}
返回值的类型必须相同,否则会报错。
循环
Rust中的循环 loop、while 和 for。
loop
loop 会一直循环,直至手动终止或者使用 break。
fn main(){
let mut num = 0;
loop {
num += 1;
if(num > 10){
println!('num: {num}');
break;
}
}
}
loop 循环也可以有返回值
fun main(){
let mut num = 0;
let test = loop{
num += 1;
if(num >5){
break num;
}
}
println!('test: {test}');
}
break 终止循环.
continue 本次循环完成后续不需要执行,进行下次循环.
循环标签
在多个loop 循环嵌套时候, 使用循环标签,终止特定的循环
fun main(){
let mut num = 0;
'loop_test: loop{
let mut remaining = 10;
loop{
remaining -= 1
if(remaining < 5){
break;
}
if(num > 2){
// 终止外循环 loop_test
break 'loop_test;
}
}
num += 1;
}
}
多个循环嵌套时候, 多个break不知是终止哪个循环, 使用'标签名: loop 定义循环, 使用 break '标签名;终止指定循环.
while 条件循环
常见的循环,条件为 true执行循环 ,为false终止循环.
fun main(){
let mut num = 3;
while num != 0{
num -=1;
}
}
for
for 循环不必多说, 各种语言中常见的了,大家用法都差不多
fun main(){
let arr1 = [1, 2, 3, 4, 5, 6];
for item in arr1{
printlm!('输出: {item}')
}
}