Liste erişimi
- Kotlin kursu
- Başlangıç
- Ders 61/116
- 5 dk
get, indexOf, subList ile liste erişimini öğrenirsin.
Liste erişimi: get, indexOf, subList
Bir listenin elemanına ulaşmanın birkaç yolu vardır. get(i) (ya da [i]) indeksteki elemanı verir. indexOf(x) x'in ilk görüldüğü indeksi döndürür; bulunamazsa -1. subList(from, to) ise [from, to) aralığını yeni liste olarak verir.
val fruits = listOf("elma", "muz", "kiraz", "üzüm")
fruits.get(0) // "elma"
fruits.indexOf("muz") // 1
fruits.subList(1, 3) // [muz, kiraz]Indeksler 0'dan başlar ve size - 1'de biter. Aralığın sonu (to) dahil değildir; bu nedenle subList(1, 3) 1 ve 2 indekslerini alır.
subList'in aralığı: [from, to)
subList(from, to) çağrısı from indeksini dahil eder, to indeksini dahil etmez. Yani subList(1, 3) size 1 ve 2 indekslerini verir; 3 dahil değildir.
val f = listOf("a", "b", "c", "d", "e")
val middle = f.subList(1, 4) // [b, c, d]Bu yarım-açık (half-open) aralık geleneği Kotlin'in 1..4 (kapalı) ve 1 until 4 (açık) aralıklarıyla tutarlıdır. Indeks hesap yaparken kolaylık sağlar.
Uygulama İlk meyveyi, indeksi ve alt listeyi yazdır
Bir listOf("elma", "muz", "kiraz", "üzüm") oluştur. get(0) ile ilk meyveyi first'e, indexOf("muz") ile indeksi i'ye, subList(1, 3) ile alt listeyi al ve her birini println ile ayrı satırda yazdır.
Başlangıç kodu
fun main() {
val fruits = listOf("elma", "muz", "kiraz", "üzüm")
// İlk meyveyi al, "muz" indeksini bul, 1..3 arası alt listeyi yazdır
}Örnek çözüm
fun main() {
val fruits = listOf("elma", "muz", "kiraz", "üzüm")
val first = fruits.get(0)
val i = fruits.indexOf("muz")
println(first)
println(i)
println(fruits.subList(1, 3))
}Beklenen çıktı
elma 1 [muz, kiraz]
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 Erişim ifadesini sonucuyla eşleştir
| Kavram | Anlamı |
|---|---|
get(0) |
İlk eleman |
indexOf(x) |
x'in konumu (-1 yoksa) |
subList(1, 3) |
1 ve 2 indeksleri |
size - 1 |
Son indeks |
2 list.indexOf("yok") ne döner?
- 0
- Exception fırlatır
- null
- -1 Doğru cevap
Açıklama: indexOf bulamazsa -1 döner; null ya da exception vermez.
3 Boşluğu doldur: ilk elemanı al
val first = fruits.____(0)
val first = fruits.get(0)
Açıklama: fruits.get(0) ilk meyveyi verir.