本文簡要介紹rust語言中 std::collections::hash_map::RawEntryMut.or_insert_with
的用法。
用法
pub fn or_insert_with<F>(self, default: F) -> (&'a mut K, &'a mut V) where F: FnOnce() -> (K, V), K: Hash, S: BuildHasher,
如果為空,則通過插入默認函數的結果來確保值在條目中,並返回對條目中鍵和值的可變引用。
例子
#![feature(hash_raw_entry)]
use std::collections::HashMap;
let mut map: HashMap<&str, String> = HashMap::new();
map.raw_entry_mut().from_key("poneyland").or_insert_with(|| {
("poneyland", "hoho".to_string())
});
assert_eq!(map["poneyland"], "hoho".to_string());
相關用法
- Rust RawEntryMut.or_insert用法及代碼示例
- Rust RawEntryMut.and_modify用法及代碼示例
- Rust Range.is_empty用法及代碼示例
- Rust RangeTo用法及代碼示例
- Rust RangeInclusive.start用法及代碼示例
- Rust Range用法及代碼示例
- Rust RangeBounds.contains用法及代碼示例
- Rust RangeInclusive.contains用法及代碼示例
- Rust RangeFrom.contains用法及代碼示例
- Rust RangeFull用法及代碼示例
- Rust RangeBounds.end_bound用法及代碼示例
- Rust RangeInclusive.into_inner用法及代碼示例
- Rust RangeToInclusive用法及代碼示例
- Rust RangeToInclusive.contains用法及代碼示例
- Rust RangeTo.contains用法及代碼示例
- Rust RangeInclusive.end用法及代碼示例
- Rust RangeInclusive.new用法及代碼示例
- Rust RangeFrom用法及代碼示例
- Rust Range.contains用法及代碼示例
- Rust RangeInclusive用法及代碼示例
- Rust RandomState.new用法及代碼示例
- Rust RangeInclusive.is_empty用法及代碼示例
- Rust RandomState用法及代碼示例
- Rust RangeBounds.start_bound用法及代碼示例
- Rust Result.unwrap_or_else用法及代碼示例
注:本文由純淨天空篩選整理自rust-lang.org大神的英文原創作品 std::collections::hash_map::RawEntryMut.or_insert_with。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。