面试题答案
一键面试区别
while
循环:while
循环会在每次迭代前检查一个条件表达式。只要条件表达式为true
,循环就会继续执行。当条件表达式变为false
时,循环终止。loop
循环:loop
循环是一个无限循环,会一直执行,直到遇到break
语句才会终止循环。
适用场景及示例
while
循环适用场景及示例:- 适用场景:适用于已知循环结束条件的情况,例如遍历一个数组直到数组结束,或者根据某个逻辑条件判断是否继续循环。
- 示例:
let mut num = 0;
while num < 5 {
println!("The number is: {}", num);
num += 1;
}
在这个例子中,while
循环会在 num
小于 5 时执行,每次循环 num
增加 1,当 num
达到 5 时,条件 num < 5
为 false
,循环终止。
2. loop
循环适用场景及示例:
- 适用场景:适用于需要无限循环,直到满足某个特定条件才结束的场景,例如实现一个简单的命令行交互程序,等待用户输入特定指令才退出。
- 示例:
loop {
let input = String::from("quit"); // 这里假设从用户输入获取字符串,实际应用中需要使用标准输入相关方法
if input == "quit" {
break;
}
println!("Continue loop...");
}
在这个例子中,loop
循环会一直执行,每次循环检查 input
是否等于 "quit",如果是则执行 break
语句终止循环,否则继续打印 "Continue loop..."。