Menu
Coddy logo textTech

Chaves e valores

Parte da seção Lógica e Fluxo do Journey de Kotlin da Coddy. Lição 7 de 63.

keys fornece as chaves distintas e values fornece os valores, que podem se repetir. Converta ou ordene as chaves quando for necessária uma ordem estável para o relatório. Aqui, as chaves de string ordenadas usam a ordenação sensível a maiúsculas e minúsculas ensinada para listas.

Dentro de main:

val scores = mapOf("Bo" to 7, "Ada" to 7)
println(scores.keys.sorted())

Classificar as chaves coloca Ada antes de Bo, independentemente da ordem de inserção.

Ordene as chaves explicitamente quando precisar de uma saída alfabética previsível.

challenge icon

Desafio

Médio

Complete sortedNames com o parâmetro stock: Map<String, Int>. Retorne as chaves do mapa como uma lista ordenada. Todas as chaves são palavras ASCII em minúsculas.

A menos que limites mais rigorosos sejam especificados acima, as coleções contêm no máximo 100 elementos em cada nível, e os argumentos inteiros e os valores inteiros das coleções estão entre -1000 e 1000. O texto fornecido para análise pode incluir representações inválidas ou fora do intervalo, conforme descrito.

Retorne um valor do tipo List<String>. Mantenha o código de entrada/saída fornecido. Ele lê argumentos escalares, um por linha; uma lista começa com sua quantidade, seguida por seus elementos, e um mapa começa com a quantidade de entradas, seguida por cada chave e valor. Listas aninhadas repetem o formato de quantidade e elementos para cada linha. O main fornecido imprime o valor retornado seguido por uma nova linha. As listas usam o formato padrão entre colchetes do Kotlin; não imprima rótulos adicionais.

Experimente você mesmo

fun sortedNames(stock: Map<String, Int>): List<String> {
    // Escreva sua solução aqui.
    return emptyList()
}
fun main() {
    val stockCount = readln().toInt()
    val stock = mutableMapOf<String, Int>()
    for (i0 in 0 until stockCount) {
        val stockKey = readln()
        val stockValue = readln().toInt()
        stock[stockKey] = stockValue
    }
    println(sortedNames(stock))
}
quiz iconTeste seus conhecimentos

Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.

Todas as lições de Lógica e Fluxo

Pratique por conta própria: Playground de Kotlin