Operadores de Sequência
Parte da seção Fundamentos do Journey de Kotlin da Coddy. Lição 81 de 93.
O Kotlin fornece o operador + para combinar listas, facilitando a mesclagem de coleções. Isso funciona de forma semelhante à concatenação de strings.
Para unir duas listas em uma só, basta usar o operador +:
val first = listOf(1, 2, 3)
val second = listOf(4, 5, 6)
val combined = first + second
println(combined) // [1, 2, 3, 4, 5, 6]Você também pode adicionar um único elemento a uma lista usando o mesmo operador:
val colors = listOf("Red", "Green")
val moreColors = colors + "Blue"
println(moreColors) // [Red, Green, Blue]O operador - remove elementos de uma lista. Ele cria uma nova lista sem o elemento especificado:
val numbers = listOf(1, 2, 3, 2, 4)
val result = numbers - 2
println(result) // [1, 3, 2, 4]Observe que apenas a primeira ocorrência do elemento é removida. Para remover todos os elementos correspondentes, você subtrairia uma lista em vez disso:
val numbers = listOf(1, 2, 3, 2, 4)
val result = numbers - listOf(2)
println(result) // [1, 3, 4]Esses operadores sempre retornam uma nova lista: as listas originais permanecem inalteradas. Isso torna seu uso seguro, sem que você precise se preocupar em modificar seus dados acidentalmente.
Desafio
MédioVocê receberá duas listas de inteiros e um único inteiro para remover. Combine as duas listas usando o operador + e, em seguida, remova todas as ocorrências do inteiro especificado usando o operador - com uma lista.
Imprima a lista resultante.
Formato da entrada:
- Primeira linha: um inteiro
nrepresentando o número de elementos da primeira lista - Próximas
nlinhas: inteiros da primeira lista - Próxima linha: um inteiro
mrepresentando o número de elementos da segunda lista - Próximas
mlinhas: inteiros da segunda lista - Última linha: o inteiro a ser removido da lista combinada
Formato da saída:
Imprima a lista resultante no formato padrão de listas do Kotlin.
Exemplo:
Se a primeira lista for [1, 2, 3], a segunda lista for [2, 4, 2] e o número a ser removido for 2, a lista combinada será [1, 2, 3, 2, 4, 2]. Após remover todas as ocorrências de 2, a saída deverá ser:
[1, 3, 4]Experimente você mesmo
fun main() {
// Ler a primeira lista
val n = readLine()!!.toInt()
val list1 = mutableListOf<Int>()
repeat(n) {
list1.add(readLine()!!.toInt())
}
// Ler a segunda lista
val m = readLine()!!.toInt()
val list2 = mutableListOf<Int>()
repeat(m) {
list2.add(readLine()!!.toInt())
}
// Ler o inteiro a remover
val toRemove = readLine()!!.toInt()
// TODO: Escreva seu código aqui
// Combine as duas listas usando o operador +
// Remova todas as ocorrências de toRemove usando o operador - com uma lista
// Imprima a lista resultante
println(result)
}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 FizzBuzz14Listas Avançadas
Fatiamento de Listas com SubListFatiamento de Listas com Take DropOperadores de SequênciaO Método ContainsRevisão - Pesquisar uma Página3Nullabilidade
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