Métodos de Lista
Parte da seção Fundamentos do Journey de Kotlin da Coddy. Lição 70 de 93.
Além de adicionar e remover elementos, as listas vêm com métodos úteis que permitem consultar e transformar seu conteúdo. Eles funcionam tanto em List quanto em MutableList.
Para verificar se uma lista tem algum elemento, use isEmpty() ou isNotEmpty():
val tasks = listOf("Email", "Call")
println(tasks.isEmpty()) // false
println(tasks.isNotEmpty()) // truePara listas numéricas, você pode calcular rapidamente estatísticas comuns:
val scores = listOf(85, 92, 78, 95)
println(scores.sum()) // 350
println(scores.average()) // 87.5
println(scores.max()) // 95
println(scores.min()) // 78Para encontrar a posição de um elemento, use indexOf(). Ele retorna o índice da primeira ocorrência ou -1 se o elemento não for encontrado:
val colors = listOf("Red", "Green", "Blue", "Green")
println(colors.indexOf("Green")) // 1
println(colors.indexOf("Yellow")) // -1Você também pode inverter uma lista ou classificá-la:
val numbers = listOf(3, 1, 4, 1, 5)
println(numbers.reversed()) // [5, 1, 4, 1, 3]
println(numbers.sorted()) // [1, 1, 3, 4, 5]Esses métodos retornam novas listas e não modificam a original, o que faz com que sejam seguros para usar em qualquer lugar.
Desafio
MédioVocê recebe a seguinte lista:
val temperatures = listOf(72, 85, 90, 68, 75, 88, 92, 70)Usando métodos de lista, imprima as informações a seguir em linhas separadas, nesta ordem exata:
- A soma de todas as temperaturas
- A temperatura média
- A temperatura mais alta
- A temperatura mais baixa
- O índice de
90na lista - A lista ordenada em ordem crescente
Experimente você mesmo
fun main() {
val temperatures = listOf(72, 85, 90, 68, 75, 88, 92, 70)
// TODO: Escreva seu código abaixo
// Use métodos de lista para calcular e imprimir:
// 1. A soma de todas as temperaturas
// 2. A temperatura média
// 3. A temperatura mais alta
// 4. A temperatura mais baixa
// 5. O índice de 90 na lista
// 6. A lista ordenada em ordem crescente
}Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.
Todas as lições de Fundamentos
4Operadores – Parte 1
Operadores aritméticosOperador móduloAtribuição aumentadaOperadores de comparaçãoRecapitulação – Matemática simples7Entrada e Saída Básicas
Função PrintlnTemplates de StringEntrada com ReadLineConversão de TiposRevisão - Anos até a AposentadoriaRevisão - Verdadeiro ou Falso10Funções
Declare uma funçãoParâmetros e argumentosValores de retornoArgumentos nomeadosValores padrãoFunções de expressão únicaRecapitulação — função SigmaRecapitulação — função de validação2Variáveis
Val vs VarInferência de TiposNúmerosStringBooleanoConvenções de NomenclaturaRecapitulação - Inicializar Variáveis5Operadores – Parte 2
Operadores lógicos – Parte 1Operadores lógicos – Parte 2Operadores lógicos – Parte 3Ternário com expressão ifRecapitulação – Lógica simples8Calculadora de Divisão da Conta
Mensagem de Boas-vindasObtendo a Entrada11FizzBuzz com uma Reviravolta
Visão Geral do JogoA Função FizzBuzz3Nullabilidade
O que é Null SafetyTipos anuláveisOperador de chamada seguraOperador ElvisNoções básicas do desafio de funçõesAsserção de não nuloRecapitulação - Acesso seguro6Tomada de Decisões
Instrução IfIf - ElseIf como ExpressãoExpressão WhenWhen com IntervalosRecapitulação - Calculadora Simples9Laços de Repetição
Laço ForLaço WhileLaço Do-WhileBreakContinueIntervalos em LaçosLaço AninhadoRecapitulação - FatorialRecapitulação - Entrada Dinâmica12Fundamentos de Listas
List vs MutableListAcessando ElementosModificando ListasMétodos de ListaPair e TripleRecapitulação - Lista de ProdutosRecapitulação - Lista Invertida15Rastreador de Despesas Diárias
Visão Geral do ProjetoSair do ProgramaPratique por conta própria: Playground de Kotlin