RUST · HASHMAP

HashMap 업데이트 전략 선택표

HashMap은 키가 이미 있을 때와 없을 때의 의도가 다릅니다. 덮어쓰기, 최초값 유지, 누적 갱신을 구분하면 코드가 훨씬 선명해집니다.

업데이트 흐름

entry
insert(k, v)키가 있으면 새 값으로 덮어씁니다.
entry(k)키의 자리 자체를 검사하고 점유/빈 상태로 나눕니다.
or_insert(v)없을 때만 기본값을 넣고 참조를 돌려줍니다.
*count += 1돌려받은 가변 참조로 값을 누적합니다.
키 도착존재 확인초기화갱신

언제 쓰나

choice
덮어쓰기최근 점수, 마지막 상태처럼 새 값이 기준일 때 insert를 씁니다.
기본값 보장키가 없을 때만 생성하려면 entry().or_insert()가 맞습니다.
카운터단어 빈도처럼 누적할 때는 or_insert(0) 뒤 값을 증가시킵니다.
중복 조회 방지contains_key 후 insert보다 entry가 의도를 더 직접 표현합니다.