如何在 Rust 中将字符串 (String) 转换为整数 (int)?
大家好!我刚开始学习 Rust,从 Python 转过来,遇到了字符串转数字的问题。
在 Python 中,我习惯写 `int("123")` 就能得到数字 123。但在 Rust 中,事情变得复杂了。我有一个变量:
```rust
let input = String::from("42");
let number: i32 = input; // 错误!
```
编译器报错:`expected i32, found String`。我明白 Rust 是强类型语言,不能直接把字符串赋值给数字。
我尝试用 `as` 进行类型转换:
```rust
let number: i32 = input as i32; // 同样错误
```
但这也不管用。我读到在 Rust 中需要使用 `parse()` 方法,但不知道如何正确使用。如果字符串可能无效(例如 "abc"),该怎么办?如何处理错误?如果字符串很长或包含空格,又该如何处理?
希望得到一个详细的示例和解释,说明如何正确地将 `String` 转换为 `i32`(或其他整数类型),并考虑各种情况。