Rust控制语句

起因

这里接着上一篇,继续学习Rust的控制语句,大部分和其他编程语言相同,只是格式有些不同。

控制语句

rust控制表达式 if else loop for match

示例代码

//if语句和其他语言基本一样,只是没有条件没有小括号
let x = 100;
if x > 0 {
    println!("x >0");
} else {
    println!("x < 0")
}

//多重if语句
let y = 200;
if y > 10 {
    println!("level 1");
} else if y > 20 {
    println!("level 2");
} else if y > 30 {
    println!("level 3");
} else {
    println!("level 5");
}

//let和if组合使用
let num = if y > 100 {
    1
} else {
    0
};
println!("num = {}", num);

//loop 死循环,相当于其他语言的 while(true){ //执行代码} 或者 for(;;){ //执行代码 }
//下面代码进行注释,不然下面的代码无法执行
////    loop {
////        println!("loop out ....");
////    }

//loop和let组合使用
let mut counter = 0;
let result = loop {
    counter += 1;
    if counter == 10 {
        break counter * 2;
    }
};
println!("result = {}", result);

//while
let mut a = 0;
while a < 10 {
    a += 1;
    println!("a = {}", a);
}

//for
for num in (1..100) {
    println!("for inc num = {}", num);
}

//match 在rust语言中,没有switch关键字,可以通过match实现相同的功能
//_ 相当于其他语言中default
let level = 2;
match level {
    1 => { println!("level 1") }
    2 => println!("level 2"),
    3 => println!("level 3"),
    4 => println!("level 4"),
    _ => println!("level 5")
}


秋风 2019-10-03