Šajā programmā jūs iemācīsities kārtot noteiktu karti pēc vērtībām Kotlinā.
Piemērs: kārtojiet karti pēc vērtībām
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) ) )
Palaidot programmu, izeja būs:
Atslēga: Austrālija Vērtība: Kanberas atslēga: Nepāla Vērtība: Katmandu atslēga: Anglija Vērtība: Londonas atslēga: Indija Vērtība: Ņūdeli Atslēga: Amerikas Savienotās Valstis Vērtība: Vašingtona
Iepriekš minētajā programmā mums ir a HashMap
ar valstīm un to attiecīgajām galvaspilsētām, kas glabājas mainīgās galvaspilsētās.
Lai kārtotu karti, mēs izmantojam virkni darbību, kas veiktas vienā rindā:
val rezultāts = lielie burti.toList (). sortedBy ((_, vērtība) -> vērtība). toMap ()
- Pirmkārt, lielie burti tiek pārvērsti sarakstā, izmantojot
toList()
. - Tad
sortedBy()
tiek izmantots, lai kārtotu sarakstu pēc vērtības( (_, value) -> value)
. Mēs izmantojam_
atslēgu, jo neizmantojam to šķirošanai. - Visbeidzot, mēs to pārveidojam atpakaļ kartē, izmantojot
toMap()
un saglabājot rezultātu.
Šeit ir ekvivalents Java kods: Java programma, lai kārtotu karti pēc vērtībām.