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


Rust Option.map_or_else用法及代碼示例

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

用法

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

計算默認函數結果(如果沒有),或將不同的函數應用於包含的值(如果有)。

例子

let k = 21;

let x = Some("foo");
assert_eq!(x.map_or_else(|| 2 * k, |v| v.len()), 3);

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

相關用法


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