比如我现在有两个变量m: Option<i32>, n: Option<i32>,我如何同时给这两个变量做类型匹配?
试过if let None = m || n 这种不行
比如我现在有两个变量m: Option<i32>, n: Option<i32>,我如何同时给这两个变量做类型匹配?
试过if let None = m || n 这种不行
let m = Some(32);
let n = Some(32);
if let (Some(m), Some(n)) = (m , n) {
println!("{}, {}", m, n)
}
你可以使用元组 `tuple` 放一起,然后一次性匹配,用 match 也可以。
let m = Some(32);
let n = Some(32);
match (m,n) {
(Some(m), Some(n))=>{
println!("Sopm({}), Some({})", m, n)
},
(Some(m), None)=>{
println!("Some({}), None", m)
},
(None, Some(n))=>{
println!("None, Some({})", n)
},
(None, None)=>{
println!("None, None")
}
}