Program Kotlin do sortowania mapy według wartości

W tym programie nauczysz się sortować daną mapę według wartości w Kotlinie.

Przykład: Sortuj mapę według wartości

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

Po uruchomieniu programu wynik będzie następujący:

 Klucz: Australia Wartość: Canberra Klucz: Nepal Wartość: Kathmandu Klucz: Anglia Wartość: Londyn Klucz: Indie Wartość: New Delhi Klucz: Stany Zjednoczone Wartość: Waszyngton

W powyższym programie mamy HashMapz krajami i ich odpowiednimi stolicami zapisanymi w postaci różnych liter.

Aby posortować mapę, używamy serii operacji wykonywanych w jednej linii:

 val result = capitals.toList (). sortBy ((_, wartość) -> wartość) .toMap ()
  • Najpierw wielkie litery są konwertowane na listę przy użyciu toList().
  • Następnie sortedBy()służy do sortowania listy według wartości ( (_, value) -> value). Używamy _klucza, ponieważ nie używamy go do sortowania.
  • Na koniec konwertujemy go z powrotem na mapę za pomocą toMap()i przechowujemy w wyniku.

Oto odpowiednik kodu w języku Java: program w języku Java do sortowania mapy według wartości.

Interesujące artykuły...