Sobes.tech
Junior — Middle

Ҳусусиятҳои хосиятӣ бояд дар калидҳо дар структураи маълумоти харита дошта бошанд?

sobes.tech AI

Ҷавоб аз AI

Дар Go, калидҳо дар харита бояд аз намудҳои муқоисашаванда (comparable) бошанд, яъне намудҳое, ки метавон онҳоро бо операторҳои муқоиса == ва != истифода бурд. Ин барои он зарур аст, ки харита метавонад калидҳоро самаранок ҷустуҷӯ ва муқоиса кунад.

Намудҳое, ки метавон ҳамчун калид истифода шаванд:

  • Намудҳои оддӣ: сатрҳо, рақамҳо, арзишҳои булеан.
  • ишорагарон.
  • сохторҳо, агар ҳамаи майдонҳои онҳо муқоисашаванда бошанд.

Намудҳое, ки истифодаи онҳо ҳамчун калид манъ аст:

  • Слайсҳо (slice), харитҳо (map), функсияҳо (func), зеро онҳо муқоисашаванда нестанд.

Масалан:

m := make(map[string]int)
m["key"] = 42

Ин ҷо калид сатр аст, ки дуруст аст.