文字列をintに変換しますか?質問する

文字列をintに変換しますか?質問する

注意: この質問には非推奨の 1.0 以前のコードが含まれています。ただし、回答は正しいです。

strRust でを に変換するにはint、次のようにします。

let my_int = from_str::<int>(my_str);

String私が知っている、 a をan に変換する唯一の方法は、intそのスライスを取得して、from_str次のように使用することです。

let my_int = from_str::<int>(my_string.as_slice());

Stringを に直接変換する方法はありますかint?

ベストアンサー1

直接intに変換するには、str::parse::<T>()方法、 どれの結果を返すint を含む。

let my_string = "27".to_string();  // `parse()` works with `&str` and `String`!
let my_int = my_string.parse::<i32>().unwrap();

::<>解析する型は、上記のように turbofish 演算子 ( ) を使用するか、明示的な型注釈を使用して指定できます。

let my_int: i32 = my_string.parse().unwrap();

parse()を返すのでResultErrの場合、文字列が指定された型として解析できなかった場合は (たとえば、文字列は"peter"として解析できませんi32) 、またはOk値が含まれる になります。

おすすめ記事