Belajar Cara Menggunakan Map dan HashMap pada Kotlin


Assalamualaikum Warahmatullahi Wabarakatuh.

Selamat berjumpa kembali dengan saya, rasanya sudah lama sekali saya tidak membahasa mengenai pemrograman Kotlin, karena fokus pada pemrograman Java, selain java, saya juga mempunyai basic pada pemrograman Kotlin dan ingin berbagi pada kalian semua,mengenai materi yang telah saya pelajar, salah satunya yaitu Map dan HashMap.

Map dan HashMap merupakan data Collection yang digunakan untuk menyimpan data dengan jumlah yang banyak, seperti Array. Ok, sebelum saya membahas lebih jauh lagi mengenai Map dan HashMap, pertama saya akan menjelaskan terlebih dahulu mengenai perbadaan Map dan HashMap.


Perbedaan dari Class/Objek tersebut yaitu, Map bisa disebut juga sebuah objek yang bersifat Immutable, yang artinya nilai/value didalam objek tersebut tidak dapat diubah, dan hanya dapat membaca saja (Read Only), element didalamnya tidak dapat diambahkan atau dihapus, sedangkan HashMap yaitu kebalikan dari Map, nilai/valuenya dapat diubah, ditambahkan, atau dihapus (Read and Write), disebut juga Mutable.


Berbeda dengan Array, Map dan HashMap terdiri dari key-value, yang artinya, program dapat mengambil data dari Objek tersebut dengan cara memanggil keynya.

Penggunaan Map dan HashMap hampir sama dengan Java, tapi ada sedikit perbedaan Syntax yang digunakan pada Java. Selanjutnya kita akan bahas lebih jauh lagi mengenai kedua Class/Objek tersebut dan belajar cara implementasi pada pemrograman Kotlin.

A. Map pada Kotlin

Disini kita akan menggunakan Intellij IDEA, Buat Project Baru.

Pertama kita akan belajar cara menggunakan Map terlebih dahulu, contoh sederhana dari penggunaan Map, seperti berikut ini.
package WILDAN_TECHNO_ART

/*
 Selamat Belajar Kotlin
 WILDAN TECHNO ART
 Cianjur Apps Developer
 */

fun main(args: Array<String>){

    //Deklarasi Variable dengan Parameter berupa Key-Value
    val data = mapOf('A' to "Adibil", 'W' to "Wildan", 'F' to "Ferdy", 'R' to "Reyhan")
    
    //Mencetak semua nilai dari Objek data
    for(getKey in data.keys){
        println(data[getKey])
    }
}
Demo:



Penjelsan:

Pertama kita deklarasikan variable/objek bernama data, untuk menggunakan Map pada kotlin, kita cukup menggunakan Class bernama mapOf, dengan parameter berupa Key-Value, dengan tipe data Char(untuk key) dan String(untuk nilai/value).

Didalam mapOf tersebut, sebenarnya kita dapat menetapkan tipe data pada Key dan Valuenya, seperti ini mapOf<Char, String>, tetapi agar lebih singkat, kita tidak perlu menetapkan tipe datanya secara langsung, itu merupakan salah satu kelebihan dari Kolin, yaitu dapat mengetahui tipe data yang digunakan, tanpa harus di deklarasikan secara langsung.

Beberapa huruf seperti 'A', 'W', 'F', 'R' adalah key yang digunakan untuk mencetak nilai/value dari Map tersebut, dan to digunakan untuk menentukan pasangan dari Key dengan Valuenya. Misalnya untuk mencetak value "Wildan", kita cukup memanggil keynya saja, yaitu 'W'.

Selanjutnya cetak semua nilai didalam objek data, menggunakan perulangan for, didalam for tersebut, pertama kita membuat objek bernama getKey, objek tersebut akan mencetak semua nilai dari data, dan akan melooping sebanyak jumlah nilai(key).

data.keys, artinya kita mengambil semua key, didalam objek data, dan mengalihkannya kedalam getKey, untuk memanggil valuenya.

Untuk mencetak salah satu nilai pada Map, kalian dapat menulisnya seperti berikut ini.
fun main(args: Array<String>){

    //Deklarasi Variable dengan Parameter berupa Key-Value
    val data = mapOf('A' to "Adibil", 'W' to "Wildan", 'F' to "Ferdy", 'R' to "Reyhan")
    
    //Mencetak salah satu nilai dari Objek data
    println(data['R'])
}
Map bersifat Read Only, artinya user hanya bisa membaca datanya saja, yang sudah dideklarasikan oleh program, user tidak dapat mengubah ataupun menghapusnya.

B.HashMap pada Kotlin

HashMap adalah sebuah objek yang bersifat Mutable,artinya nilai/value didalamnya dapat ditulis, dibaca dan diupdate, oleh user itu sendiri, misalnya kita membuat aplikasi penyimpanan barang, user dapat menambahkan data berupa nilai beserta keynya(primary key), selain menyimpan, user juga dapat menghaspus serta mengubah nilai didalam objek tersebut.

Untuk menambahkan nilai/value kedalam objek HashMap, caranya seperti berikut ini.
package WILDAN_TECHNO_ART

/*
 Selamat Belajar Kotlin
 WILDAN TECHNO ART
 Cianjur Apps Developer
 */

fun main(args: Array<String>){

    //Deklarasi Variable dengan Parameter berupa Key-Value
    val data = HashMap<Int, String>()

    //Manambahkan key dan value kedalam objek data
    data[77] = "WILDAN TECHNO ART"
    data[95] = "UNPI Cianjur"
    data[8] = "Kotlin Programming"
    
    //Mencetak semua nilai dari Objek data
    for(getKey in data.keys){
        println(data[getKey])
    }
}
Demo:


Selanjutnya, untuk mengubah salah satu nilai didalam objek data kita dapat menggunakan fungsi replace(), misalnya kita ingin mengubah nilai didalam key 95.
fun main(args: Array<String>){

    //Deklarasi Variable dengan Parameter berupa Key-Value
    val data = HashMap<Int, String>()

    //Manambahkan key dan value kedalam objek data
    data[77] = "WILDAN TECHNO ART"
    data[95] = "UNPI Cianjur"
    data[8] = "Kotlin Programming"

    data.replace(95, "Universitas Putra Indonesia")

    //Mencetak semua nilai dari Objek data
    for(getKey in data.keys){
        println(data[getKey])
    }
}
Demo:


Dan untuk menghapus salah satu nilai didalam objek data, kita dapat menggunakan fungsi remove(), seperti berikut ini.
fun main(args: Array<String>){

    //Deklarasi Variable dengan Parameter berupa Key-Value
    val data = HashMap<Int, String>()

    //Manambahkan key dan value kedalam objek data
    data[77] = "WILDAN TECHNO ART"
    data[95] = "UNPI Cianjur"
    data[8] = "Kotlin Programming"

    data.remove(8) //Menghapus nilai pada key 8

    //Mencetak semua nilai dari Objek data
    for(getKey in data.keys){
        println(data[getKey])
    }
}
Demo:


Terimakasih atas kunjungannya, semoga tutorial yang saya berikan bisa bermanfaat untuk kalian semua, selebihnya, mohon maaf bila ada kesalahan.

Wassalamualaikum Warahmatullahi Wabarakatuh.

Wildan M Athoillah
Wildan M Athoillah Blogger dan spesialis pembuat aplikasi android.