本文簡要介紹rust語言中 std::collections::hash_map::HashMap.with_capacity_and_hasher
的用法。
用法
pub fn with_capacity_and_hasher( capacity: usize, hash_builder: S) -> HashMap<K, V, S>
創建具有指定容量的空 HashMap
,使用 hash_builder
對鍵進行哈希處理。
哈希映射將能夠保存至少 capacity
元素而無需重新分配。如果capacity
為0,則不會分配哈希映射。
警告:hash_builder
通常是隨機生成的,其設計目的是讓 HashMaps 能夠抵抗導致許多衝突和性能非常差的攻擊。使用此函數手動設置可能會暴露 DoS 攻擊向量。
傳遞的 hash_builder
應該實現 BuildHasher
特征,以便 HashMap 有用,有關詳細信息,請參閱其文檔。
例子
use std::collections::HashMap;
use std::collections::hash_map::RandomState;
let s = RandomState::new();
let mut map = HashMap::with_capacity_and_hasher(10, s);
map.insert(1, 2);
相關用法
- Rust HashMap.with_capacity用法及代碼示例
- Rust HashMap.with_hasher用法及代碼示例
- Rust HashMap.get用法及代碼示例
- Rust HashMap.try_insert用法及代碼示例
- Rust HashMap.keys用法及代碼示例
- Rust HashMap.iter用法及代碼示例
- Rust HashMap.iter_mut用法及代碼示例
- Rust HashMap.retain用法及代碼示例
- Rust HashMap.clear用法及代碼示例
- Rust HashMap.reserve用法及代碼示例
- Rust HashMap.into_keys用法及代碼示例
- Rust HashMap.into_values用法及代碼示例
- Rust HashMap.get_mut用法及代碼示例
- Rust HashMap.is_empty用法及代碼示例
- Rust HashMap.drain用法及代碼示例
- Rust HashMap.drain_filter用法及代碼示例
- Rust HashMap.len用法及代碼示例
- Rust HashMap.remove用法及代碼示例
- Rust HashMap.insert用法及代碼示例
- Rust HashMap.entry用法及代碼示例
- Rust HashMap.capacity用法及代碼示例
- Rust HashMap.contains_key用法及代碼示例
- Rust HashMap.values用法及代碼示例
- Rust HashMap.values_mut用法及代碼示例
- Rust HashMap.new用法及代碼示例
注:本文由純淨天空篩選整理自rust-lang.org大神的英文原創作品 std::collections::hash_map::HashMap.with_capacity_and_hasher。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。