Gruplama ve Bölümlendirme
Verileri düzenleyin
Gruplama ve Bölümlendirme, CoddyKit'te ücretsiz bir Kotlin Academy dersidir. Bu, 4 dersinin 2. 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.
Verileri Düzenleme
Bazen bir koleksiyonu kategorilere ayırmanız gerekir. Kotlin, öğeleri bir anahtara göre gruplara ayırmak için groupBy ve bir koşula göre iki listeye bölmek için partition sunar.
partition İşlevi
partition, bir koleksiyonu iki listeden oluşan bir Pair ikilisine böler: koşul ifadesiyle eşleşen öğeler ve eşleşmeyen öğeler.
fun main() {
val numbers = listOf(1, 2, 3, 4, 5, 6)
val (even, odd) = numbers.partition { it % 2 == 0 }
println("Even: $even")
println("Odd: $odd")
}İkiliyi Yapısına Ayırma
partition bir Pair döndürdüğü için, yukarıda gösterildiği gibi bunu doğrudan iki adlandırılmış değişkene ayırabilirsiniz. Ayrıca .first ve .second özelliklerine erişebilirsiniz.
fun main() {
val result = listOf(10, -5, 3, -8).partition { it >= 0 }
println(result.first)
println(result.second)
}groupBy İşlevi
groupBy, anahtarların seçici tarafından üretildiği ve değerlerin bu anahtarı paylaşan öğelerin listesi olduğu bir Map oluşturur.
fun main() {
val words = listOf("apple", "banana", "avocado", "cherry")
val byFirstLetter = words.groupBy { it.first() }
println(byFirstLetter)
}Hesaplanan Anahtara Göre Gruplama
Anahtar, bir dizenin uzunluğu veya kalan gibi hesaplanan herhangi bir değer olabilir.
fun main() {
val numbers = listOf(1, 2, 3, 4, 5, 6, 7)
val byRemainder = numbers.groupBy { it % 3 }
println(byRemainder)
}Değer Dönüşümüyle groupBy
groupBy, her değeri gruba eklenmeden önce dönüştüren ikinci bir lambda kabul eder.
fun main() {
val words = listOf("red", "rose", "blue", "berry")
val grouped = groupExample(words)
println(grouped)
}
fun groupExample(words: List<String>) =
words.groupBy({ it.first() }, { it.uppercase() })Gruplar Üzerinde Yineleme
groupBy bir Map döndürdüğü için, her grubu işlemek üzere girdiler üzerinde yineleme yapabilirsiniz.
fun main() {
val animals = listOf("cat", "cow", "dog", "duck")
val groups = animals.groupBy { it.first() }
for ((letter, list) in groups) {
println("$letter -> $list")
}
}groupingBy ile Sayma
Her anahtara göre sayım yapmak için groupingBy işlevinin ardından eachCount kullanmak hem verimlidir hem de anlaşılırdır.
fun main() {
val letters = listOf("a", "b", "a", "c", "b", "a")
val counts = letters.groupingBy { it }.eachCount()
println(counts)
}partition ve filter
Yalnızca eşleşen öğelere ihtiyacınız varsa filter kullanın. Hem eşleşen hem de eşleşmeyen öğelere ihtiyacınız varsa partition işlemi tek geçişte çalışır ve iki listeyi de döndürür.
fun main() {
val ages = listOf(15, 22, 17, 30, 12)
val (adults, minors) = ages.partition { it >= 18 }
println("Adults: $adults, Minors: $minors")
}groupBy ile partition Arasında Seçim
Kesin olarak evet/hayır koşuluyla tanımlanan iki grup için partition kullanın. Bir özelliğe göre anahtarlanmış birden çok grup olabileceğinde groupBy kullanın.
Pratik Gruplama
Gruplama ve bölümlendirme, ayrıntılı el ile yazılmış döngülerin yerini haritalar ve listelerle alır. Niyeti açıkça ifade eder ve kayıt tutma hatalarını azaltır.
Kısa Kontrol
partition ne döndürür?
Özet
Bir koşula göre iki listeye bölmek için partition kullanmayı, bir anahtara göre bir haritada gruplara ayırmak için groupBy kullanmayı ve sayımlar için groupingBy().eachCount() kullanmayı öğrendiniz. Sırada koleksiyonları toplama işlemleriyle tek değerlere indireceksiniz.
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
“Gruplama ve Bölümlendirme” dersi ücretsiz mi?
Evet — “Gruplama ve Bölümlendirme” 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.
“Gruplama ve Bölümlendirme” dersinde ne öğreneceğim?
Verileri düzenleyin 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 2. dersidir.
“Gruplama ve Bölümlendirme” 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
- Filtreleme ve Eşleme
- Gruplama ve Bölümlendirme
- Toplama
- İlişkilendirme ve Düzleştirme