Kotlins program för att sortera en karta efter värden

I det här programmet lär du dig att sortera en given karta efter värden i Kotlin.

Exempel: Sortera en karta efter värden

 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) ) )

När du kör programmet blir resultatet:

 Nyckel: Australien Värde: Canberra Nyckel: Nepal Värde: Katmandu Nyckel: England Värde: London Nyckel: Indien Värde: New Delhi Nyckel: USA Värde: Washington

I programmet ovan har vi a HashMapmed länder och deras respektive huvudstäder lagrade i variabla huvudstäder.

För att sortera kartan använder vi en serie åtgärder som utförs i en rad:

 valresultat = versaler.toList (). sortedBy ((_, värde) -> värde) .toMap ()
  • Först konverteras huvudstäder till en lista med toList().
  • Sedan sortedBy()används för att sortera listan i värde ( (_, value) -> value). Vi använder _för nyckel eftersom vi inte använder den för sortering.
  • Slutligen konverterar vi den tillbaka till kartan med toMap()och lagrar den i resultat.

Här är motsvarande Java-kod: Java-program för att sortera en karta efter värden.

Intressanta artiklar...