Koleksi Kotlin
Bekerjalah dengan List, Set, dan Map. Gunakan operator fungsional seperti filter, map, sortedBy, forEach, find, any, dan all, lalu rangkai operasi untuk transformasi data yang ringkas.
Koleksi Kotlin adalah pelajaran Android Academy gratis di CoddyKit. Ini adalah pelajaran 1 dari 6. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Android Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Android Academy mencakup 6 pelajaran total.
Gambaran Umum Koleksi
Pustaka standar Kotlin menyediakan tiga jenis koleksi utama:
- Daftar — urutan elemen yang beraturan (dapat memiliki duplikat)
- Himpunan — elemen unik, tanpa urutan tertentu
- Peta — pasangan kunci-nilai, kunci bersifat unik
Setiap jenis memiliki versi tidak dapat diubah (hanya dapat dibaca) dan versi dapat diubah (dapat dimodifikasi).
Daftar: listOf vs mutableListOf
Buat daftar menggunakan fungsi pabrik:
fun main() {
// Immutable — cannot add/remove items
val fruits = listOf("Apple", "Banana", "Cherry")
println(fruits[0]) // Apple
println(fruits.size) // 3
// Mutable — can modify
val scores = mutableListOf(10, 20, 30)
scores.add(40)
scores.removeAt(0) // remove index 0
println(scores) // [20, 30, 40]
}Peta: Pasangan Kunci-Nilai
Gunakan mapOf dan mutableMapOf untuk membuat peta. Akses nilai berdasarkan kunci:
fun main() {
val capitals = mapOf(
"Turkey" to "Ankara",
"Germany" to "Berlin",
"Japan" to "Tokyo"
)
println(capitals["Turkey"]) // Ankara
println(capitals["France"]) // null (not found)
println(capitals.getOrDefault("France", "Unknown")) // Unknown
// Iterate
for ((country, city) in capitals) {
println("$country -> $city")
}
}filter — Memilih Item
filter mengembalikan daftar baru yang hanya berisi elemen yang memenuhi suatu kondisi:
fun main() {
val numbers = listOf(1, 2, 3, 4, 5, 6, 7, 8)
val evens = numbers.filter { it % 2 == 0 }
println(evens) // [2, 4, 6, 8]
val names = listOf("Alice", "Bob", "Anna", "Charlie")
val aNames = names.filter { it.startsWith("A") }
println(aNames) // [Alice, Anna]
}map — Mengubah Item
map mengubah setiap elemen dan mengembalikan daftar baru:
fun main() {
val prices = listOf(10.0, 20.0, 30.0)
// Apply 10% tax
val withTax = prices.map { it * 1.1 }
println(withTax) // [11.0, 22.0, 33.0]
val names = listOf("alice", "bob", "carol")
val upper = names.map { it.uppercase() }
println(upper) // [ALICE, BOB, CAROL]
}sortedBy & sortedByDescending
Urutkan daftar berdasarkan properti:
data class Student(val name: String, val grade: Int)
fun main() {
val students = listOf(
Student("Alice", 88),
Student("Bob", 95),
Student("Carol", 72)
)
val byGrade = students.sortedByDescending { it.grade }
for (s in byGrade) println("${s.name}: ${s.grade}")
// Bob: 95
// Alice: 88
// Carol: 72
}forEach & find
Dua fungsi koleksi lain yang berguna:
forEach— melakukan iterasi tanpa membuat hasilfind— mengembalikan item pertama yang memenuhi kondisi, atau null
Merangkai Operasi
Rangkai beberapa operasi untuk transformasi data yang ringkas:
data class Product(val name: String, val price: Double, val inStock: Boolean)
fun main() {
val products = listOf(
Product("Laptop", 999.0, true),
Product("Mouse", 29.0, false),
Product("Keyboard", 79.0, true),
Product("Monitor", 349.0, true)
)
// In-stock products under $500, sorted by price
val result = products
.filter { it.inStock && it.price < 500 }
.sortedBy { it.price }
.map { "${it.name}: ${it.price}" }
result.forEach { println(it) }
}any, all, count
Fungsi agregasi untuk mendapatkan jawaban dengan cepat:
any { condition }— true jika setidaknya satu item cocokall { condition }— true jika setiap item cocokcount { condition }— jumlah item yang cocoksumOf { it.price }— jumlah suatu properti numerik
Pemeriksaan Singkat
Fungsi apa yang digunakan untuk mendapatkan hanya item dalam daftar yang memenuhi suatu kondisi?
Ringkasan: Koleksi Kotlin
Sekarang Anda dapat bekerja dengan data di Kotlin secara efisien:
listOf/mutableListOf,mapOf/mutableMapOffilter— memilih item yang cocokmap— mengubah itemsortedBy/sortedByDescending- Rangkai operasi untuk pipeline data yang rapi dan mudah dibaca
Berikutnya: tampilkan daftar di layar dengan RecyclerView.
Belajar Kotlin dengan tutor AI — gratis
Tulis dan jalankan kode asli di browser kamu, dapatkan bantuan instan dari tutor AI 24/7, dan lanjutkan di mana kamu tinggalkan di web atau aplikasi.
- Kursus
- 36
- Pelajaran
- 152
Pertanyaan yang Sering Diajukan
Apakah pelajaran “Koleksi Kotlin” gratis?
Ya — teks lengkap “Koleksi Kotlin” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Android Academy, upgrade ke CoddyKit PRO. Kursus Android Academy mencakup 6 pelajaran total.
Apa yang akan aku pelajari di “Koleksi Kotlin”?
Bekerjalah dengan List, Set, dan Map. Gunakan operator fungsional seperti filter, map, sortedBy, forEach, find, any, dan all, lalu rangkai operasi untuk transformasi data yang ringkas. Kamu berlatih Android Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.
Apakah aku perlu pengalaman untuk memulai Android Academy?
Tidak diperlukan pengalaman sebelumnya. Android Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 1 dari 6.
Berapa lama pelajaran “Koleksi Kotlin” memakan waktu?
Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.
Bisakah aku menulis dan menjalankan kode dalam pelajaran Android Academy ini?
Ya. Setiap pelajaran Android Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.
Semua pelajaran dalam kursus ini
- Koleksi Kotlin
- Dasar RecyclerView
- Peristiwa Klik RecyclerView
- SharedPreferences
- Preferensi DataStore
- Adapter & DiffUtil