공통 컬렉션
공통 컬렉션 (Common Collections)
러스트 표준 라이브러리에는 컬렉션(collections) 이라고 부르는 아주 유용한 데이터 구조 몇 가지가 들어 있어요. 대부분의 다른 데이터 타입은 하나의 특정 값을 나타내지만, 컬렉션은 여러 값을 담을 수 있어요. 내장된 배열(array)과 튜플(tuple) 타입과 달리 컬렉션이 가리키는 데이터는 힙(heap)에 저장돼요. 그래서 데이터의 양을 컴파일 타임에 알 필요가 없고 프로그램이 실행되는 동안 커지거나 줄어들 수 있죠. 이 장에서는 러스트 프로그램에서 아주 자주 쓰이는 컬렉션 세 가지를 다룰게요.
이 장에서 다룰 컬렉션들
각기 다른 컬렉션은 서로 다른 능력과 비용을 갖고 있어요. 지금 상황에 맞는 컬렉션을 고르는 것은 시간이 지나면서 익히게 되는 기술이에요. 이 장에서는 러스트 프로그램에서 아주 자주 쓰이는 세 가지 컬렉션을 다룹니다.
- 벡터(vector) 는 서로 옆에 붙어 있는 값들을 가변 개수만큼 저장하게 해 줘요.
- 문자열(string) 은 문자의 컬렉션이에요.
String타입은 앞에서 이미 언급했지만, 이 장에서는 깊이 있게 다룰게요. - 해시 맵(hash map) 은 값을 특정 키(key)와 연결하게 해 줘요. 더 일반적인 데이터 구조인 맵(map) 의 한 특정 구현이에요.
표준 라이브러리가 제공하는 다른 종류의 컬렉션을 배우고 싶다면 표준 라이브러리 문서를 참고하세요. 이 장에서는 벡터, 문자열, 해시 맵을 만들고 갱신하는 방법과, 각각이 특별한 이유를 살펴볼게요.