Kotlin mutableMapOf()

Kotlin MutableMap es una interfaz de marcos de colección que contiene objetos en forma de claves y valores. Permite al usuario recuperar de manera eficiente los valores correspondientes a cada clave. La clave y los valores pueden ser de diferentes pares como <Int, String>, <Char, String>, etc.
Para usar la interfaz MutableMap necesitamos usar funciones como se muestra a continuación 
 

mutableMapOf() or mutableMapOf <K, V>()

Para declarar la interfaz MutableMap
 

interface MutableMap<K, V> : Map<K, V> (source)

Ejemplo de función mutable que contiene entradas, claves, valores.

Kotlin

fun main(args: Array<String>) {
    val items = mutableMapOf("Box" to 12, "Books" to 18, "Table" to 13)
 
    println("Entries: " + items.entries)       //Printing Entries
    println("Keys:" + items.keys)              //Printing Keys
    println("Values:" + items.values)          //Printing Values
}

Producción: 
 

Entries: [Box=12, Books=18, Table=13]
Keys:[Box, Books, Table]
Values:[12, 18, 13]

Encontrar el tamaño del mapa –

Podemos determinar el tamaño del mapa mutable usando dos métodos. Usando la propiedad de tamaño del mapa y usando el método count(). 
 

Kotlin

fun main(args : Array<String>) {
 
    val ranks = mutableMapOf(1 to "India",2 to "Australia",
        3 to "England",4 to "Africa")
    //method 1
    println("The size of the mutablemap is: "+ranks.size)
    //method 2
    println("The size of the mutablemap is: "+ranks.count())
}

Producción: 
 

The size of the mutablemap is: 4
The size of the mutablemap is: 4

Obtener valores de Mapa –

Podemos recuperar valores de un mapa mutable usando diferentes métodos discutidos en el siguiente programa. 
 

Kotlin

fun main() {
 
    val ranks = mutableMapOf(1 to "India",2 to "Australia",
        3 to "England",4 to "Africa")
 
    //method 1
    println("Team having rank #1 is: "+ranks[1])
    //method 2
    println("Team having rank #3 is: "+ranks.getValue(3))
    //method 3
    println("Team having rank #4 is: "+ranks.getOrDefault(4, 0))
    // method  4
    val team = ranks.getOrElse(2 ,{ 0 })
    println(team)
}

Producción: 
 

Team having rank #1 is: India
Team having rank #3 is: England
Team having rank #4 is: Africa
Australia

función put() y putAll()

La función put() y putAll() se usa para agregar elementos en MutableMap. La función put() agrega un solo elemento a la vez, mientras que la función putAll() se puede usar para agregar varios elementos a la vez en MutableMap.
Programa Kotlin para usar las funciones put() y putAll() – 
 

Kotlin

fun main(args: Array<String>) {
    val mutableMap = mutableMapOf<String, String>()
    mutableMap.put("Name", "Geek")
    mutableMap.put("Country", "India")
 
    val map = mapOf<String,String>("Department" to "Computer Science",
        "Hobby" to "Coding")
 
    println("<----Traverse mutableMap---->")
    for (key in mutableMap.keys) {
        println("Key = "+key +", "+"Value = "+mutableMap[key])
    }
    mutableMap.putAll(map)
    println("<----Traversal after putting hashmap---->")
    for (key in mutableMap.keys) {
        println("Key = "+key +", "+"Value = "+mutableMap[key])
    }
}

Producción: 
 

<----Traverse mutableMap---->
Key = Name, Value = Geek
Key = Country, Value = India
<----Traversal after putting hashmap---->
Key = Name, Value = Geek
Key = Country, Value = India
Key = Department, Value = Computer Science
Key = Hobby, Value = Coding

función remove(key) y remove(key, value) –

La función remove(key) se utiliza para eliminar el valor que corresponde a su clave mencionada. 
La función remove(key, value) se usa para eliminar elementos que contienen claves y valores
Programa Kotlin para demostrar la función remove() – 
 

Kotlin

fun main(args: Array<String>) {
 
    val mutableMap = mutableMapOf<String, String>()
    mutableMap.put("Name", "Geek")
    mutableMap.put("Company", "GeeksforGeeks")
    mutableMap.put("Country", "India")
 
    for (key in mutableMap.keys) {
        println("Key = ${key}, Value = ${mutableMap[key]}")
    }
    println()
    println("Remove the Key: "+mutableMap.remove("Country"))
    println()
    println("Is pair removes from the map: "
            +mutableMap.remove("Company","GeeksforGeeks"))
    println()
    println("<---Traverse Again--->")
    for (key in mutableMap.keys) {
        println("Key = ${key}, Value = ${mutableMap[key]}")
    }
}

Producción: 
 

Key = Name, Value = Geek
Key = Company, Value = GeeksforGeeks
Key = Country, Value = India

Remove the Key: India

Is pair removes from the map: true

<---Traverse Again--->
Key = Name, Value = Geek

Función clear() –

Se usa para eliminar todo el elemento del mutableMap.
Programa Kotlin para usar la función clear() – 
 

Kotlin

fun main(args: Array<String>) {
 
    val mutableMap: MutableMap<String, String> = mutableMapOf<String, String>()
    mutableMap.put("Name", "Geek")
    mutableMap.put("Company", "GeeksforGeeks")
 
    for (key in mutableMap.keys) {
        println("Key = ${key}, Value = ${mutableMap[key]}")
    }
 
    println("mutableMap.clear()")
    println("Method called to clear the map: "+mutableMap.clear())
    println("Map Empty: "+mutableMap)
}

Producción: 
 

Key = Name, Value = Geek
Key = Company, Value = GeeksforGeeks
mutableMap.clear()
Method called to clear the map: kotlin.Unit
Map Empty: {}

Recorrido en un mapa mutable –

Atravesar significa viajar a través de cada Node en las estructuras de datos como Lista enlazada, Arrays, Árboles, etc. 
Simplemente significa viajar a cada Node al menos una vez para mostrárselo al usuario o realizar una operación en él. 
Para entender esto, tomemos un ejemplo debajo 
del programa Kotlin para demostrar el recorrido: 
 

Kotlin

fun main(args: Array<String>) {     //Declaring function
    //Creating MutableMap of different types
    val mutableMap = mutableMapOf(1 to "Aditya",
        4 to "Vilas", 2 to "Manish", 3 to "Manjot")
 
    for (key in mutableMap.keys) {
        println("Key = ${key}, Value = ${mutableMap[key]}")     
    }
}

Producción: 
 

Key = 1, Value = Aditya
Key = 4, Value = Vilas
Key = 2, Value = Manish
Key = 3, Value = Manjot

Publicación traducida automáticamente

Artículo escrito por Lakhiwal y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *