如何在Rust中将String转换为整数?

Gap*_*pry 4 rust

从stdin读取输入会产生一个String,但是如何将其转换为整数?

use std::io;

fn main() {
    println!("Type something");

    let mut input = String::new();

    io::stdin()
        .read_line(&mut input)
        .expect("Failed to read line");

    println!("{}", input);
}
Run Code Online (Sandbox Code Playgroud)

She*_*ter 12

用途parse:

use std::io;

fn main() {
    println!("Type something");

    let mut line = String::new();

    io::stdin()
        .read_line(&mut line)
        .expect("Failed to read line");

    let input: u32 = line
        .trim()
        .parse()
        .expect("Wanted a number");

    println!("{}", input);
}
Run Code Online (Sandbox Code Playgroud)

请注意,从字符串中解析数字可能会失败,因此Result返回a.对于这个例子,我们对使用的故障情况感到恐慌expect.

另外,read_line不按下换行符Enter,因此trim在解析之前用于忽略该换行符.