Sobes.tech
Senior

Дар бораи харитаҳо дар Go чӣ мегӯӣ?

sobes.tech AI

Ҷавоб аз AI

Go-дегі карта — бұл кіріктірілген деректер түрі, ол ассоциативті массив немесе сөздік ретінде жүзеге асырылады, онда кілттер мәндермен сәйкестендіріледі.

Go-дегі карта сипаттамалары:

  • Кілттер мен мәндер анықталған типтерге ие, мысалы, map[string]int — кілттер жолдар, мәндер бүтін сандар.
  • Карта make функциясы арқылы инициализацияланады, мысалы: m := make(map[string]int).
  • Элементтерге m[key] арқылы қол жеткізуге болады.
  • Егер кілт жоқ болса, мәннің нөлдік мәні қайтарылады.
  • Кілттің бар-жоғын екінші қайтару мәні арқылы тексеруге болады: val, ok := m[key].
  • Карта реттелмеген, өту тәртібі кездейсоқ.
  • Карта ағынға қауіпсіз емес, бір уақытта бірнеше ағынмен қолдану үшін синхрондау қажет.

Мысал:

package main
import "fmt"

func main() {
    m := make(map[string]int)
    m["apple"] = 5
    m["banana"] = 3

    val, ok := m["apple"]
    if ok {
        fmt.Println("apple:", val)
    }

    // Кілтті жою
    delete(m, "banana")
}