Kotlin Collections

Kotlin’de Listelere Eleman Ekleme

Spread the love

Kotlin, koleksiyonları yönetmek için esnek yollar sunar, ancak değiştirilebilir ve değiştirilemez listeler arasındaki farkı anlamak çok önemlidir. Bu makale, add() ve += operatörünü kullanarak her iki türe de eleman eklemeyi ele almaktadır.

İçindekiler

add() Fonksiyonuyla Eleman Ekleme

add() fonksiyonu, bir ArrayList‘e eleman eklemek için çok yönlü yollar sağlar. Sona ekleme yapabilir veya belirli bir indekse ekleyebilirsiniz.

Sona ekleme:


val mutableList = ArrayList()
mutableList.add("Elma")
mutableList.add("Muz")
mutableList.add("Kiraz")

println(mutableList) // Çıktı: [Elma, Muz, Kiraz]

Belirli bir indekse ekleme:


mutableList.add(1, "Portakal") // 1. indekse "Portakal" ekler
println(mutableList) // Çıktı: [Elma, Portakal, Muz, Kiraz]

+= Operatörüyle Eleman Ekleme

+= operatörü, özellikle tek eleman eklemek veya listeleri birleştirmek için kullanışlı, özlü bir yol sunar.

Tek bir eleman ekleme:


val mutableList2 = ArrayList()
mutableList2 += 1
mutableList2 += 2
mutableList2 += 3

println(mutableList2) // Çıktı: [1, 2, 3]

Başka bir koleksiyondan birden fazla eleman ekleme:


val list1 = ArrayList(listOf(1,2,3))
val list2 = listOf(4,5,6)
list1 += list2

println(list1) // Çıktı: [1, 2, 3, 4, 5, 6]

Değiştirilemez Listelerle Çalışma

Hem add() hem de +=, değiştirilebilir listeler için tasarlanmıştır. Bunları değiştirilemez bir listede (listOf() kullanılarak oluşturulmuş) kullanmaya çalışmak, derleme zamanı hatasına neden olur. Değiştirilemez bir listeye eklemek için, orijinal elemanları ve yeni elemanları içeren yeni bir liste oluşturmanız gerekir.


val immutableList = listOf("Elma", "Muz", "Kiraz")
val newList = immutableList + "Portakal" // Yeni bir liste oluşturur
println(newList) // Çıktı: [Elma, Muz, Kiraz, Portakal]

Özetle:

add() ayrıntılı kontrol sağlar, += ise özlü bir sözdizimi sunar. İhtiyaçlarınıza en uygun yöntemi seçin. Hatalardan kaçınmak için değiştirilebilir ve değiştirilemez listeler arasındaki farkı her zaman hatırlayın.

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir