当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Rust BTreeMap.retain用法及代码示例


本文简要介绍rust语言中 alloc::collections::btree_map::BTreeMap.retain 的用法。

用法

pub fn retain<F>(&mut self, f: F) where    K: Ord,    F: FnMut(&K, &mut V) -> bool,

仅保留谓词指定的元素。

换句话说,删除所有对 (k, v) 使得 f(&k, &mut v) 返回 false 。元素按升序键顺序访问。

例子

use std::collections::BTreeMap;

let mut map: BTreeMap<i32, i32> = (0..8).map(|x| (x, x*10)).collect();
// Keep only the elements with even-numbered keys.
map.retain(|&k, _| k % 2 == 0);
assert!(map.into_iter().eq(vec![(0, 0), (2, 20), (4, 40), (6, 60)]));

相关用法


注:本文由纯净天空筛选整理自rust-lang.org大神的英文原创作品 alloc::collections::btree_map::BTreeMap.retain。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。