我试图寻找一种好的方法,将Option<String>
转换为Option<i8>
。
例如:
use std::str::FromStr;
fn main() {
let some_option: Option<String> = Some("too".to_owned());
let new_option: Option<i8> = some_option.map(|x| i8::from_str(x.as_str()));
}
我原以为我可以使用turbo fish来显式转换类型,就像这样:
use std::str::FromStr;
fn main() {
let some_option: Option<String> = Some("too".to_owned());
let new_option: Option<i8> = some_option.map::<Option<i8>>(|x| i8::from_str(x.as_str()));
}
然而,编译器指出这不是正确的参数数量,所以我认为这可能有效,但它并没有。
use std::str::FromStr;
fn main() {
let some_option: Option<String> = Some("too".to_owned());
let new_option: Option<i8> = some_option.map::<Option<i8>,i8::from_str>();
}