#vec #remove #swap-remove

vec_remove_if

根据提供的条件从向量中提取元素

1 个稳定版本

1.0.0 2022年7月23日

#57 in #remove

MIT 许可证

6KB

vec_remove_if

根据提供的条件从向量中提取元素

项目由 SnS Development 提供

问题

需要通过可变借用从现有向量中过滤一些元素

解决方案

Vec<T> 上实现了一个 trait,包含 2 个函数 remove_ifswap_remove_if,这些函数遍历元素,运行提供的闭包,并移除闭包返回 [true] 的元素。

示例

use vec_remove_if::VecRemoveIf;
let mut v = vec![1, 12, 3, 14, 5, 16, 7, 18];

assert_eq!(
    vec![12, 14, 16, 18],
    v.remove_if(|e| e > &10)
);
assert_eq!(
    vec![1, 3, 5, 7],
    v
);

许可证:MIT

无运行时依赖