Memperbarui Map
Termasuk bagian Logika & Alur dalam perjalanan Kotlin di Coddy. Pelajaran 3 dari 63.
mutableMapOf memungkinkan kamu menambahkan dan mengganti entri dengan penugasan menggunakan tanda kurung siku. remove(key) menghapus entri jika ada. val dapat merujuk ke map yang bisa diubah: referensinya tetap, sementara isinya berubah.
Di dalam main:
val counts = mutableMapOf("a" to 2)
counts["a"] = 5
counts["b"] = 3
println(counts.size)Memperbarui a mengubah nilainya; menambahkan b memperkenalkan kunci kedua.
Penetapan dengan tanda kurung siku menyisipkan kunci yang belum ada atau mengganti nilai kunci yang sudah ada.
Tantangan
SedangLengkapi updatedStock dengan parameter stock: Map<String, Int>, key: String, amount: Int. Salin stock ke dalam map mutable, tetapkan amount ke key yang diminta, lalu kembalikan jumlah key yang baru.
Kecuali batas yang lebih ketat disebutkan di atas, koleksi berisi paling banyak 100 elemen pada setiap tingkat, dan argumen integer serta nilai koleksi integer berada di antara -1000 dan 1000. Teks yang diberikan untuk diurai dapat mencakup representasi yang tidak valid atau di luar rentang, seperti yang dijelaskan.
Kembalikan nilai bertipe Int. Pertahankan kode input/output yang disediakan. Kode tersebut membaca argumen skalar, satu per baris; list dimulai dengan jumlah elemennya, diikuti elemen-elemennya, dan map dimulai dengan jumlah entrinya, diikuti setiap key dan nilai. List bertingkat mengulangi format jumlah-elemen untuk setiap baris. main yang disediakan mencetak nilai yang dikembalikan, diikuti satu karakter baris baru. List menggunakan format standar Kotlin dengan tanda kurung siku; jangan cetak label tambahan.
Coba sendiri
fun updatedStock(stock: Map<String, Int>, key: String, amount: Int): Int {
// Tulis solusimu di sini.
return 0
}
fun main() {
val stockCount = readln().toInt()
val stock = mutableMapOf<String, Int>()
for (i0 in 0 until stockCount) {
val stockKey = readln()
val stockValue = readln().toInt()
stock[stockKey] = stockValue
}
val key = readLine().orEmpty()
val amount = readln().toInt()
println(updatedStock(stock, key, amount))
}Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.
Semua pelajaran di Logika & Alur
4Koleksi Bersarang
List Berisi ListMenelusuri BarisRingkasan BarisMeratakan List BertingkatRangkuman, Baris Tempat Duduk7Alur Pemrosesan Koleksi
Transformasi dengan MapMemfilter NilaiMenguji Aturan KoleksiMengakumulasi dengan FoldRangkuman: Total yang Disetujui2Map Bagian 2
Menelusuri Entri MapKunci dan NilaiMap FrekuensiMap BersarangRingkasan: Laporan Frekuensi5Proyek: Buku Kontak
Menyimpan KontakMencari KontakLatihan sendiri: Playground Kotlin