Програма Kotlin за сортиране на карта по стойности

В тази програма ще се научите да сортирате дадена карта по стойности в Kotlin.

Пример: Сортиране на карта по стойности

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

Когато стартирате програмата, изходът ще бъде:

 Ключ: Австралия Стойност: Канбера Ключ: Непал Стойност: Катманду Ключ: Англия Стойност: Лондон Ключ: Индия Стойност: Ню Делхи Ключ: САЩ Стойност: Вашингтон

В горната програма имаме a HashMapс държави и съответните им столици, съхранени в променливи столици.

За да сортираме картата, използваме поредица от операции, изпълнени в един ред:

 val резултат = capitals.toList (). sortedBy ((_, value) -> value) .toMap ()
  • Първо, капиталите се преобразуват в списък с помощта toList().
  • След това sortedBy()се използва за сортиране на списъка по стойност ( (_, value) -> value). Използваме _за ключ, защото не го използваме за сортиране.
  • И накрая, ние го преобразуваме обратно в карта, като toMap()го използваме и съхраняваме в резултат.

Ето еквивалентния Java код: Java програма за сортиране на карта по стойности.

Интересни статии...