In dit programma leer je een bepaalde kaart te sorteren op waarden in Kotlin.
Voorbeeld: sorteer een kaart op waarden
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) ) )
Wanneer u het programma uitvoert, is de uitvoer:
Sleutel: Australië Waarde: Canberra Sleutel: Nepal Waarde: Kathmandu Sleutel: Engeland Waarde: London Sleutel: India Waarde: New Delhi Sleutel: Verenigde Staten Waarde: Washington
In het bovenstaande programma hebben we een HashMap
met landen en hun respectievelijke hoofdsteden opgeslagen in variabele hoofdletters.
Om de kaart te sorteren, gebruiken we een reeks bewerkingen die op één regel worden uitgevoerd:
val resultaat = hoofdletters.toList (). gesorteerdBy ((_, waarde) -> waarde) .toMap ()
- Eerst worden hoofdletters omgezet naar een lijst met
toList()
. - Vervolgens
sortedBy()
wordt gebruikt om de lijst op waarde te sorteren( (_, value) -> value)
. We gebruiken_
for key omdat we deze niet gebruiken voor sortering. - Ten slotte converteren we het terug naar de kaart met
toMap()
en slaan het op in resultaat.
Hier is de equivalente Java-code: Java-programma om een kaart op waarden te sorteren.