Neste programa, você aprenderá a classificar um determinado mapa por valores em Kotlin.
Exemplo: classificar um mapa por valores
fun main(args: Array) ( var capitals = hashMapOf() capitals.put("Nepal", "Kathmandu") capitals.put("India", "New Delhi") capitals.put("United States", "Washington") capitals.put("England", "London") capitals.put("Australia", "Canberra") val result = capitals.toList().sortedBy ( (_, value) -> value).toMap() for (entry in result) ( print("Key: " + entry.key) println(" Value: " + entry.value) ) )
Quando você executa o programa, a saída será:
Chave: Austrália Valor: Canberra Chave: Nepal Valor: Kathmandu Chave: Inglaterra Valor: Londres Chave: Índia Valor: Nova Delhi Chave: Estados Unidos Valor: Washington
No programa acima, temos um HashMap
com os países e seus respectivos capitais armazenados em capitais variáveis.
Para classificar o mapa, usamos uma série de operações executadas em uma única linha:
val result = capitals.toList (). SortBy ((_, valor) -> valor) .toMap ()
- Primeiro, as maiúsculas são convertidas em uma lista usando
toList()
. - Em seguida,
sortedBy()
é usado para classificar a lista por valor( (_, value) -> value)
. Usamos_
para chave porque não a usamos para classificação. - Finalmente, nós o convertemos de volta para o mapa usando
toMap()
e o armazenamos no resultado.
Aqui está o código Java equivalente: programa Java para classificar um mapa por valores.