本文简要介绍rust语言中 std::collections::hash_map::RawEntryMut.and_modify
的用法。
用法
pub fn and_modify<F>(self, f: F) -> Self where F: FnOnce(&mut K, &mut V),
在任何潜在的插入到Map之前,提供对被占用条目的就地可变访问。
例子
#![feature(hash_raw_entry)]
use std::collections::HashMap;
let mut map: HashMap<&str, u32> = HashMap::new();
map.raw_entry_mut()
.from_key("poneyland")
.and_modify(|_k, v| { *v += 1 })
.or_insert("poneyland", 42);
assert_eq!(map["poneyland"], 42);
map.raw_entry_mut()
.from_key("poneyland")
.and_modify(|_k, v| { *v += 1 })
.or_insert("poneyland", 0);
assert_eq!(map["poneyland"], 43);
相关用法
- Rust RawEntryMut.or_insert_with用法及代码示例
- Rust RawEntryMut.or_insert用法及代码示例
- 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.and_modify。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。