Програма 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) ) )

Коли ви запускаєте програму, результат буде:

 Ключ: Австралія Значення: Канберра Ключ: Непал Значення: Катманду Ключ: Англія Значення: Лондон Ключ: Індія Значення: Нью-Делі Ключ: США Значення: Вашингтон

У наведеній вище програмі ми маємо HashMapспівпрацю з країнами та відповідними столицями, що зберігаються у змінних столицях.

Для сортування карти ми використовуємо ряд операцій, що виконуються в одному рядку:

 результат val = capitals.toList (). sortedBy ((_, value) -> value) .toMap ()
  • Спочатку великі літери перетворюються у список за допомогою toList().
  • Потім sortedBy()використовується для сортування списку за значенням ( (_, value) -> value). Ми використовуємо _для ключа, оскільки не використовуємо його для сортування.
  • Нарешті, ми перетворюємо його назад на карту за допомогою toMap()і зберігаємо в результаті.

Ось еквівалентний код Java: програма Java для сортування карти за значеннями.

Цікаві статті...