În acest program, veți învăța să sortați o hartă dată după valori în Kotlin.
Exemplu: Sortează o hartă după valori
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) ) )
Când rulați programul, ieșirea va fi:
Cheie: Australia Valoare: Canberra Cheie: Nepal Valoare: Kathmandu Cheie: Anglia Valoare: Londra Cheie: India Valoare: New Delhi Cheie: Statele Unite Valoare: Washington
În programul de mai sus, avem un HashMap
cu țările și capitalurile respective stocate într-o capital variabilă.
Pentru a sorta harta, folosim o serie de operații executate într-o singură linie:
val result = capitals.toList (). sortedBy ((_, value) -> value) .toMap ()
- În primul rând, capitalurile sunt convertite într-o listă folosind
toList()
. - Apoi,
sortedBy()
este folosit pentru a sorta lista după valoare( (_, value) -> value)
. Folosim_
pentru cheie, deoarece nu o folosim pentru sortare. - În cele din urmă, îl convertim înapoi la hartă folosindu-l
toMap()
și îl stocăm în rezultat.
Iată codul Java echivalent: program Java pentru a sorta o hartă după valori.