Kotlin Academy · Ders

Char ve Özel Aralıklar

Tam sayılarla sınırlı kalmayın

4. ders / 413 adım

Char ve Özel Aralıklar, CoddyKit'te ücretsiz bir Kotlin Academy dersidir. Bu, 4 dersinin 4. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, Kotlin Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. Kotlin Academy kursu toplamda 4 dersten oluşur.

Tam sayılarının ötesinde

Aralıklar yalnızca Int için değildir. Kotlin, karakter aralıklarını ve karşılaştırılabilir diğer türlerin aralıklarını destekler.

Bu derste karakter aralıklarını ve özel türlerin rangeTo ile nasıl kullanılabileceğini inceleyeceksiniz.

Karakter aralıklarını yineleme

Karakterlerin tanımlı bir sırası vardır; bu nedenle 'a'..'z' geçerli bir aralıktır.

Üzerinde yineleme yapabilir, üyeliği denetleyebilir ve daha fazlasını gerçekleştirebilirsiniz.

fun main() {
    for (c in 'a'..'f') print(c)
    println()
    println('q' in 'a'..'z')
}

Karakterleri doğrulama

Karakter aralıkları, rakamları veya harfleri denetlemek gibi girdi doğrulamalarını okunabilir hâle getirir.

fun isDigit(c: Char): Boolean = c in '0'..'9'

fun main() {
    println(isDigit('7'))
    println(isDigit('x'))
}

Harfleri sayma

Bir karakter aralığı üzerinde yineleme yapıp değerleri toplayarak hızlıca bir alfabe oluşturabilirsiniz.

fun main() {
    val alphabet = ('a'..'z').toList()
    println(alphabet.size)
    println(alphabet.first())
    println(alphabet.last())
}

Long aralıkları

Aralıklar Long türüyle de çalışır; bu, büyük sayısal aralıklar için kullanışlıdır.

Aynı işleçler geçerlidir.

fun main() {
    val big = 1L..5L
    println(big.sum())
}

Karşılaştırılabilir aralıklar

Herhangi bir Comparable türü .. ile bir aralık oluşturabilir; ancak bu tür aralıklar yalnızca üyelik denetimini destekler, yinelemeyi desteklemez.

Örneğin String aralıkları sözlükbilimsel sırayı denetler.

fun main() {
    val range = "apple".."mango"
    println("cherry" in range)
    println("zebra" in range)
}

Bazı aralıklar neden yinelenemez

Yineleme için tanımlı bir adım gerekir. Tam sayılar ve karakterler için böyle bir adım vardır (1 eklemek); ancak dizeler ve kayan noktalı sayılar için belirgin bir sonraki değer yoktur.

Bu nedenle bu aralıklar in kullanımını destekler, ancak for döngülerini desteklemez.

fun main() {
    val r = 1.0..5.0
    println(2.5 in r)
    // for (x in r) // not allowed for Double
}

rangeTo ile özel türler

.. işleci bir rangeTo işlevini çağırır. Sınıfınız Comparable uyguluyorsa aralık üyeliğini kendiliğinden elde edersiniz.

Burada basit bir sürüm sınıfı sayısal karşılaştırma yapar.

data class Ver(val n: Int) : Comparable<Ver> {
    override fun compareTo(other: Ver) = n - other.n
}

fun main() {
    val range = Ver(1)..Ver(5)
    println(Ver(3) in range)
    println(Ver(9) in range)
}

Perde arkasındaki işleç

a..b yazmak, a.rangeTo(b) çağırmakla aynıdır.

İşleç biçimi, aynı işlev için yalnızca daha hoş bir söz dizimidir.

fun main() {
    val r1 = 1..5
    val r2 = 1.rangeTo(5)
    println(r1.toList() == r2.toList())
}

Doğru aralığı seçme

Kısa bir rehber:

  • Sayılar ve karakterler → yineleme yapın ve denetleyin
  • Kayan noktalı sayılar ve özel karşılaştırılabilir türler → yalnızca üyeliği denetleyin
  • Adıma ihtiyacınız varsa tam sayı veya karakter ilerlemelerini tercih edin
fun main() {
    println('m' in 'a'..'z')
    println(3.5 in 1.0..4.0)
    println(50 in 1..100)
}

Bir araya getirme

Aralıklar birçok türde genellenebilir:

  • Karakter aralıkları yinelenebilir ve doğrulama için kullanılabilir
  • Long aralıkları büyük aralıkları ele alır
  • Karşılaştırılabilir ve özel türler üyeliği destekler
  • .., rangeTo için kısa yazımdır
fun main() {
    val vowels = "aeiou"
    for (c in 'a'..'z') {
        if (c in vowels) print(c)
    }
    println()
}

Kısa sınama

Karakter ve özel aralıklar konusundaki anlayışınızı sınayın.

Özet

Karakter ve özel aralıkları öğrendiniz:

  • Karakter ve Long aralıkları Int gibi yinelenebilir
  • Karşılaştırılabilir türler .. aracılığıyla üyeliği destekler
  • Ayrık olmayan türlerde in denetimi yapılabilir, ancak döngü kurulamaz
  • .., rangeTo için kısa yazımdır

Aralıklar ve İlerlemeler kursu tamamlandı.

Başlamak ücretsiz

Yapay zeka eğitmeniyle Kotlin öğren — ücretsiz

Tarayıcında gerçek kod yaz ve çalıştır, 7/24 yapay zeka eğitmeninden anında yardım al; web'de ya da uygulamada kaldığın yerden devam et.

Kurslar
51
Dersler
203

Sıkça Sorulan Sorular

“Char ve Özel Aralıklar” dersi ücretsiz mi?

Evet — “Char ve Özel Aralıklar” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve Kotlin Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. Kotlin Academy kursu toplamda 4 dersten oluşur.

“Char ve Özel Aralıklar” dersinde ne öğreneceğim?

Tam sayılarla sınırlı kalmayın Kotlin Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.

Kotlin Academy öğrenmeye başlamak için deneyim gerekli mi?

Önceden deneyim gerekmez. CoddyKit'te Kotlin Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 4. dersidir.

“Char ve Özel Aralıklar” dersi ne kadar sürer?

Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.

Bu Kotlin Academy dersinde kod yazıp çalıştırabilir miyim?

Evet. Her Kotlin Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.

Bu kursun tüm dersleri

  1. Aralık İşleçleri
  2. step ve downTo
  3. Döngülerde Aralıklar
  4. Char ve Özel Aralıklar
← Kotlin Academy Sayfasına Dön