Junior — Middle
Len değişkeninin, dizinin veya dilimin gerçek boyutundan daha küçük bir uzunluk gösterdiği bir durum mümkün müdür?
sobes.tech yapay zeka
AI'dan gelen yanıt
Go dilinde, bir dizi veya dilim için len değişkeni her zaman mevcut uzunluğu yansıtır ve yerleşik len() fonksiyonu tarafından döndürülür.
- Bir dizi için,
lenher zaman dizinin boyutuna eşittir ve değişmez. - Bir dilim için,
lendilimdeki öğe sayısını gösterir ve bu, dilimin kapasitesinden küçük veya eşit olabilir.
Dizinin gerçek boyutundan daha küçük len durumunun imkansız olduğunu, çünkü dizilerde len sabit olup boyuta eşittir.
Dilimde uzunluk kapasiteden küçük olabilir, ancak indeksle erişilebilen gerçek öğe sayısından fazla olamaz.
Örnek:
arr := [5]int{1,2,3,4,5}
fmt.Println(len(arr)) // 5
slice := arr[1:3]
fmt.Println(len(slice)) // 2
fmt.Println(cap(slice)) // 4
Burada, dilimin uzunluğu 2'dir, oysa kapasite 4'tür. Ancak, uzunluk dilimin gerçek boyutundan büyük olamaz.