我是铁 rust 新手,正在寻找好的风格选项来处理以下问题:
让我们假设foo
返回Option<i32>
.我在循环中调用foo
,在返回None
的情况下,我只是想继续前进.现在,我发现自己在做一些类似的事情:
for _whatever in something {
data = foo();
if data.is_none() {
continue;
}
let data = data.unwrap();
// other stuff
}
不错,可读性很好,但我不禁觉得它可以更简洁.这感觉像是一个非常常见的用例,我想知道我还可以有什么其他 Select 来实现类似的结果,以及是否有以这种方式处理None
的公认最佳实践.
我试着在is_none
上使用match
个语句和条件句,发现后者稍好一些.