當前位置: 首頁>>編程示例 >>用法及示例精選 >>正文


Rust OccupiedEntry.replace_key用法及代碼示例

本文簡要介紹rust語言中 std::collections::hash_map::OccupiedEntry.replace_key 的用法。

用法

pub fn replace_key(self) -> K

將哈希映射中的鍵替換為用於創建此條目的鍵。

例子

#![feature(map_entry_replace)]
use std::collections::hash_map::{Entry, HashMap};
use std::rc::Rc;

let mut map: HashMap<Rc<String>, u32> = HashMap::new();
let known_strings: Vec<Rc<String>> = Vec::new();

// Initialise known strings, run program, etc.

reclaim_memory(&mut map, &known_strings);

fn reclaim_memory(map: &mut HashMap<Rc<String>, u32>, known_strings: &[Rc<String>] ) {
    for s in known_strings {
        if let Entry::Occupied(entry) = map.entry(Rc::clone(s)) {
            // Replaces the entry's key with our version of it in `known_strings`.
            entry.replace_key();
        }
    }
}

相關用法


注:本文由純淨天空篩選整理自rust-lang.org大神的英文原創作品 std::collections::hash_map::OccupiedEntry.replace_key。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。