콘텐츠로 이동
Xen / docs

문서 검색

한국어 · v0.1.0-demo.2

검색어를 입력하세요.

    EN
    Xen / reference v0.1.0-demo.2

    std.hashmap

    이 릴리스에 문서화된 API를 정리합니다.

    use std.hashmap;

    문자열 키로 값을 찾을 때는 std.hashmap.HashMap<V>를 사용합니다. 다음을 hashmap.xen으로 저장하세요.

    use std.hashmap as hashmap;
    #![explc]
    fn main() {
    let mut prices = hashmap.new<Int>();
    prices.insert("tea", 3);
    prices.insert("coffee", 4);
    let key = "tea";
    println(match prices.get_cloned(&key) {
    Option.Some(price) => price,
    Option.None => 0,
    });
    println(prices.len());
    }
    터미널 창
    $ xen run hashmap.xen
    3
    2
    작업API
    새 사전std.hashmap.new<V>()
    개수·비어 있음map.len(), map.is_empty()
    추가·변경map.insert(key, value); 이전 값이 있으면 Some으로 반환
    검색map.get_cloned(&key); 값의 사본을 Option으로 반환
    존재 확인map.contains_key(&key)
    제거map.remove(&key); 제거한 값을 Option으로 반환
    키 목록map.keys(); 독립적인 Vec<String>
    비우기map.clear()
    소유권을 넘기고 반복map.into_iter(); (String, V) 항목

    사전 자체는 이동 전용입니다. get_cloned는 Box·File처럼 복사할 수 없는 값을 읽을 때 쓸 수 없습니다. 그런 값은 remove로 꺼내거나 std.hashmap.with_value<V, R>(&map, &key, inspect)의 이름 있는 fn(&V) -> R 콜백으로 확인하세요. 참조를 직접 넘기는 함수에는 explc가 필요합니다. 키 목록과 반복의 순서는 보장하지 않습니다. 사전의 필드를 직접 변경하는 대신 API를 사용하세요.