Map là kiểu dữ liệu key-value tích hợp sẵn trong Go, khai báo bằng m := map[string]int{"a": 1} hoặc make(map[string]int).
- Check key tồn tại:
val, ok := m["key"]—oklà false nếu key không tồn tại (zero value của value type). - Xoá:
delete(m, "key")— không panic nếu key không tồn tại. - Không thread-safe: truy cập concurrent phải dùng
sync.Maphoặc bọc bằng mutex. - Zero value là nil: map nil chỉ đọc được, ghi sẽ panic — phải
makehoặc dùng literal trước khi gán. - Iteration order không xác định: mỗi lần range cho thứ tự khác nhau, là design có chủ ý của Go.