Rust入门08-控制流
控制流
-
if 表达式
if 表达式允许用户根据条件来执行不同的代码分支,此条件必须为bool类型
if 表达式中,与条件相关联的代码块叫做分支(arm),其可选在其后加上一个 else 表达式
fn main() { let number = 6; if number % 4 == 0 { println!("number is divisible by 4"); } else if number % 3 == 0 { println!("number is divisible by 3"); } else if number % 2 == 0 { println!("number is divisible by 2"); } else { println!("number is not divisible by 4, 3 or 2"); } }
使用 else if 处理多重条件:
如果使用了多于一个else if,那么最好使用 match 来重构代码
在 let 语句中使用 if:
因为 if 是一个表达式,所以可以将它放在 let 语句中等号的右边
-
循环
Rust 提供了3种循环:loop、while、for
-
loop 循环:
loop 关键字告诉 Rust 反复的执行一块代码,直到停止
可使用 break 关键字来告诉程序何时停止
fn loop_test() { let mut counter = 0; let result = loop { counter += 1; if counter == 10 { break counter * 2; } }; println!("The result is: {}", result); }
-
while 条件循环:
每执行循环体之前都判断一次条件
fn while_test() { let mut number = 3; while number != 0 { println!("{}!",number); number = number - 1; } println!("LIFTOFF!!!"); }
-
for 循环:
使用 for 循环遍历集合,更简洁紧凑,可针对集合中的每个元素来执行一些代码
由于 for 循环的安全简洁,其使用频率最高
Range:
指定一个开始数字和一个结束数字,Range可以生成它们之间的数字
rev 方法可以反转 Range
fn for_test() { let a = [10, 20, 30, 40, 50]; for element in a.iter() { println!("The value is: {}", element); } } fn for_demo() { for number in (1..4).rev() { println!("{}!", number); } println!("LIFTOFF!"); }
-