本文へスキップ
BecomeCoder

Rustのエラー · エラー6

unwrap() on a None value ― None を unwrap した(実行時 panic)

値が無い(None)のに .unwrap() で中身を取り出すと落ちます。

出るコード

let nums = vec![1, 2, 3];
let x = nums.get(10).unwrap();   // 範囲外 → None を unwrap
println!("{}", x);

エラーメッセージ

thread 'main' panicked at 'called `Option::unwrap()` on a `None` value'

直し方

if let Some(x) = nums.get(10)match で「無い場合」を処理します。既定値でよければ .unwrap_or(0)