面试题答案
一键面试fn get_number() -> Option<i32> {
// 这里假设实际实现会随机返回Some(i32)或None
None
}
fn main() {
let result = {
let mut none_count = 0;
loop {
match get_number() {
Some(num) if num > 100 => break Some(num),
Some(_) => none_count = 0,
None => {
none_count += 1;
if none_count >= 5 {
break None;
}
}
}
}
};
println!("{:?}", result);
}