Go

Go Veri Yapıları

Arrays, slices, maps, structs, pointers, make vs new, nil değerleri

20 mülakat soruları·
Junior
1

Go'da slice nedir?

Cevap

Slice, alttaki bir array üzerinde değişken uzunluktaki eleman dizilerinin işlenmesine olanak tanıyan dinamik bir görünümdür. Derleme zamanında belirlenen sabit boyuta sahip array'lerin aksine, slice'lar append gibi işlemlerle dinamik olarak büyüyebilir veya küçülebilir. Bu esneklik, onları homojen eleman koleksiyonlarını saklamak için Go'da en yaygın kullanılan sıralı veri yapısı haline getirir.

2

Go'da array ile slice arasındaki temel fark nedir?

Cevap

Temel fark boyuttadır: array, derleme zamanında belirlenen sabit bir boyuta sahiptir ve türün kendisinin bir parçasıdır; slice ise çalışma zamanında değişebilen dinamik bir boyuta sahiptir. Bu ayrım, farklı boyutlardaki iki array'in uyumsuz türler sayılması, buna karşın aynı eleman türündeki tüm slice'ların uyumlu olması anlamına gelir. Bu nedenle slice'lar daha esnektir ve modern Go kodunda daha yaygın kullanılır.

3

Go'da boş bir slice nasıl oluşturulur?

Cevap

Boş köşeli parantezlerin ardından boş süslü parantezlerle yazılan değişmez (literal) söz dizimi, başlatılmış boş bir slice oluşturmanın deyimsel yoludur. Bu yaklaşım uzunluğu 0 ama nil olmayan, append ile eleman almaya hazır bir slice oluşturur. Nil bir slice veren basit bir bildirimin aksine, bu açık başlatma, eleman eklerken beklenmedik davranış riski olmadan hemen kullanılabilir bir slice garanti eder.

4

Belirli bir kapasiteyle bir slice'ı başlatmak için hangi fonksiyon kullanılmalıdır?

5

Kapasitesi dolan bir slice'a eleman eklendiğinde ne olur?

+17 mülakat soruları

Bir sonraki mülakatın için Go'de uzmanlaş

Tüm sorulara, flashcards'a, teknik testlere, code review alıştırmalarına ve mülakat simülatörlerine eriş.

Ücretsiz başla