📅  最后修改于: 2023-12-03 15:25:17.834000             🧑  作者: Mango
在 Rust 中,将字符串转换为整数类型需要使用 parse
方法,并且需要指定具体的整数类型。对于 i32
类型,我们可以这样做:
let s = "42";
let n: i32 = s.parse().expect("Failed to parse");
这里我们首先声明了一个字符串 s
,它包含了要转换的整数的文本表示。然后,我们调用 parse
方法将它转换为 i32
类型。parse
方法返回一个 Result
类型的值,因为解析过程可能会失败。如果解析失败了,我们可以使用 expect
方法来抛出一个错误信息。
同时,我们也可以使用 match
方法来处理 Result
类型的值:
let s = "42";
let n: i32 = match s.parse() {
Ok(n) => n,
Err(_) => {
println!("Failed to parse {}", s);
0
}
};
这里在 match
语句中,我们通过 Ok(n)
语句块来处理解析成功的情况,通过 Err(_)
语句块来处理解析失败的情况。
在处理 Err
的情况下,我们可以使用 println!
宏来打印一条错误信息,并返回默认值 0。
需要注意的是,如果字符串的文本表示不能转换为 i32
类型,这将引发运行时错误,所以我们需要确保传递的字符串符合要求。