데브허브 | DEVHUB | 다트 기초 문법 - 9일차 / Map
- 맵은 키-값 쌍으로 자료를 보관하는 자료 구조이며, 키는 반드시 고유해야 합니다. 🔑
- 리스트(인덱스 기반)와 셋(중복 불가 값 기반)의 한계를 보완하여, 특정 키를 통해 데이터를 효율적으로 검색하고 관리합니다. 🔍
- 새로운 키로 값을 추가하거나, 기존 키의 값을 수정할 수 있으며, 중복된 키를 사용하면 기존 값이 덮어쓰기 됩니다. 🔄
- 키로 값을 조회할 때 해당 키가 없을 수 있으므로, 반환 값은 옵셔널(nullable) 타입으로 처리될 수 있습니다. ❓
- 맵은 키와 값의 자료형을 명시(제네릭)할 수 있으며, 명시하지 않으면 다이나믹으로 추론됩니다. 💡
Map.fromIterable 또는 Map.fromIterables를 사용하여 리스트와 같은 다른 컬렉션을 맵으로 변환할 수 있습니다. ↔️
UnmodifiableMapView나 const 키워드를 사용하여 맵의 내부 요소를 수정할 수 없도록 만들 수 있습니다. 🔒
- 빈 맵을 생성할 수 있으며, 이때도 자료형을 명시하여 타입 안정성을 확보할 수 있습니다. ⚪
- 한 번 정해진 값의 자료형은 변경할 수 없습니다 (예:
int로 선언된 값에 String을 넣을 수 없음). 🚫
- 맵은 플러터 개발 및 API 응답 처리 등에서 매우 중요하게 활용되며, 특히 값 부분을
dynamic으로 사용하여 유연하게 데이터를 받을 수 있습니다. 🚀