Sobes.tech
Junior — Middle

Go'da harita ve dilim kullanımı arasındaki fark nedir ve hangi durumlarda her birinin kullanılması tercih edilir?

sobes.tech yapay zeka

AI'dan gelen yanıt

Go'da, map ve slice farklı amaçlar için kullanılır:

  • map — anahtar-değer çiftlerini saklamak için kullanılan, hızlı erişim sağlayan yapısal bir yapı. Anahtarlar benzersizdir.
  • slice — dinamik boyutlu, sıralı öğeler koleksiyonu, indeksle erişim sağlar.

Ne zaman kullanmalı:

  • Benzersiz anahtarlar kullanarak hızlıca öğeleri bulmak istiyorsanız, örneğin kullanıcıları ID ile saklamak için map kullanın.
  • Öğelerin sırası önemliyse veya anahtar olmadan öğe kümesi saklamanız gerekiyorsa, örneğin görev listesi, slice kullanın.

Örnek:

// Öğrencilerin notlarını isimle saklamak için map
grades := map[string]int{"Alice": 90, "Bob": 85}

// İsimlerin listesini saklamak için slice
names := []string{"Alice", "Bob", "Charlie"}

Seçim, göreve bağlıdır: anahtar araması için — map, sıralı liste için — slice.