Junior — Middle
Какви характерни свойства трябва да имат ключовете в структурата данни map?
sobes.tech AI
Отговор от AI
В Go ключовете в map трябва да бъдат сравними (comparable) типове, тоест такива, които могат да се използват в операторите за сравнение == и !=. Това е необходимо, за да може map-ът ефективно да търси и сравнява ключовете.
Типове, които могат да се използват като ключове:
- Елементарни типове: низове, числа, булеви стойности.
- Посочващи типове.
- Структури, ако всички техни полета са сравними.
Типове, които не могат да се използват като ключове:
- Срезове (slice), карти (map), функции (func), тъй като те не са сравними.
Пример:
m := make(map[string]int)
m["key"] = 42
Тук ключът е низ, което е правилно.