unisbadri.com » Python Java Golang Typescript Kotlin Ruby Rust Dart PHP
Map

Map #

Dalam Kotlin, Map adalah sebuah koleksi yang menyimpan pasangan kunci-nilai (key-value pairs), di mana setiap kunci unik dan terhubung dengan satu nilai. Map digunakan untuk menyimpan data di mana ada asosiasi yang jelas antara elemen-elemen yang berbeda, seperti kamus (dictionary) atau direktori.

Kotlin menyediakan dua jenis Map:

  1. Immutable Map (Map): Map yang nilainya tidak dapat diubah setelah dibuat.
  2. Mutable Map (MutableMap): Map yang nilainya dapat diubah, elemen dapat ditambah, dihapus, atau dimodifikasi.

Membuat Map #

Immutable Map #

Immutable Map adalah Map yang tidak bisa diubah setelah dibuat. Anda dapat membuatnya menggunakan fungsi mapOf.

val immutableMap = mapOf("Apple" to 1, "Banana" to 2, "Cherry" to 3)

Mutable Map #

Mutable Map adalah Map yang bisa diubah setelah dibuat. Anda dapat membuatnya menggunakan fungsi mutableMapOf.

val mutableMap = mutableMapOf("Apple" to 1, "Banana" to 2)
mutableMap["Cherry"] = 3 // Menambahkan elemen baru

Operasi pada Map #

Mengakses Elemen dalam Map #

  • Menggunakan Kunci (Key): Anda dapat mengakses nilai yang terhubung dengan kunci tertentu menggunakan operator indeks ([]).

    val appleCount = immutableMap["Apple"]
    println(appleCount) // Output: 1
    
  • Menggunakan Fungsi get: Alternatif lain untuk mengakses elemen.

    val bananaCount = immutableMap.get("Banana")
    println(bananaCount) // Output: 2
    
  • Menggunakan getOrElse: Mengembalikan nilai default jika kunci tidak ditemukan.

    val orangeCount = immutableMap.getOrElse("Orange") { 0 }
    println(orangeCount) // Output: 0
    
  • Menggunakan getValue: Melemparkan NoSuchElementException jika kunci tidak ditemukan.

    val cherryCount = immutableMap.getValue("Cherry")
    println(cherryCount) // Output: 3
    

Menambah dan Menghapus Elemen (Hanya untuk MutableMap) #

  • Menambah Elemen: Anda dapat menambah elemen baru ke dalam MutableMap dengan memberikan pasangan kunci-nilai baru.

    mutableMap["Durian"] = 4 // Menambah elemen baru
    
  • Menggunakan put: Alternatif untuk menambah atau mengganti elemen.

    mutableMap.put("Elderberry", 5)
    
  • Menghapus Elemen: Menghapus elemen berdasarkan kunci menggunakan remove.

    mutableMap.remove("Banana")
    

Iterasi pada Map #

Anda dapat mengiterasi melalui pasangan kunci-nilai dalam Map menggunakan loop for.

for ((key, value) in immutableMap) {
    println("$key -> $value")
}

Output:

Apple -> 1
Banana -> 2
Cherry -> 3

Mengecek Keberadaan Kunci atau Nilai #

  • Menggunakan containsKey: Mengecek apakah sebuah kunci tertentu ada dalam Map.

    val hasApple = immutableMap.containsKey("Apple")
    println(hasApple) // Output: true
    
  • Menggunakan containsValue: Mengecek apakah sebuah nilai tertentu ada dalam Map.

    val hasValue3 = immutableMap.containsValue(3)
    println(hasValue3) // Output: true
    

Mengambil Kumpulan Kunci atau Nilai #

  • keys: Mengambil semua kunci dalam Map.

    val keys = immutableMap.keys
    println(keys) // Output: [Apple, Banana, Cherry]
    
  • values: Mengambil semua nilai dalam Map.

    val values = immutableMap.values
    println(values) // Output: [1, 2, 3]
    

Transformasi dan Filter pada Map #

  • filterKeys: Memfilter Map berdasarkan kunci.

    val filteredByKey = immutableMap.filterKeys { it.startsWith("A") }
    println(filteredByKey) // Output: {Apple=1}
    
  • filterValues: Memfilter Map berdasarkan nilai.

    val filteredByValue = immutableMap.filterValues { it > 1 }
    println(filteredByValue) // Output: {Banana=2, Cherry=3}
    
  • mapKeys: Mentransformasi kunci Map.

    val mappedKeys = immutableMap.mapKeys { it.key.uppercase() }
    println(mappedKeys) // Output: {APPLE=1, BANANA=2, CHERRY=3}
    
  • mapValues: Mentransformasi nilai Map.

    val mappedValues = immutableMap.mapValues { it.value * 2 }
    println(mappedValues) // Output: {Apple=2, Banana=4, Cherry=6}
    

Kesimpulan #

Map di Kotlin adalah struktur data yang sangat berguna untuk menyimpan data dalam bentuk pasangan kunci-nilai. Anda dapat melakukan berbagai operasi pada Map, seperti menambah, menghapus, dan mengubah elemen (pada MutableMap), mengakses elemen berdasarkan kunci, memfilter, dan melakukan transformasi. Dengan memahami berbagai operasi ini, Anda dapat menggunakan Map secara efektif dalam pengembangan aplikasi Kotlin Anda.

« List
Date & Time »