當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Rust Option.map_or用法及代碼示例


本文簡要介紹rust語言中 std::option::Option.map_or 的用法。

用法

pub fn map_or<U, F>(self, default: U, f: F) -> U where    F: FnOnce(T) -> U,

返回提供的默認結果(如果沒有),或將函數應用於包含的值(如果有)。

傳遞給map_or 的參數被熱切評估;如果要傳遞函數調用的結果,建議使用 map_or_else ,它是惰性求值的。

例子

let x = Some("foo");
assert_eq!(x.map_or(42, |v| v.len()), 3);

let x: Option<&str> = None;
assert_eq!(x.map_or(42, |v| v.len()), 42);

相關用法


注:本文由純淨天空篩選整理自rust-lang.org大神的英文原創作品 std::option::Option.map_or。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。