O Que Comprar
Parte da seção Fundamentos do Journey de Kotlin da Coddy. Lição 93 de 93.
Desafio
MédioEscreva uma função whatToBuy que receba shoppingList e alreadyBought e retorne uma lista de itens que ainda precisam ser comprados.
Filtre da lista de compras os itens que já foram comprados, mantendo apenas os itens restantes em sua ordem original.
Lógica:
- Percorra cada item da lista de compras
- Verifique se o item existe na lista de itens já comprados usando
containsouin - Se o item NÃO estiver na lista de itens já comprados, inclua-o no resultado
- Mantenha a ordem original da lista de compras
Parâmetros:
shoppingList(List<String>): Itens que você precisa compraralreadyBought(List<String>): Itens que você já comprou
Retorno: Uma lista contendo apenas os itens que ainda precisam ser comprados, em sua ordem original (List<String>)
Experimente você mesmo
fun whatToBuy(shoppingList: List<String>, alreadyBought: List<String>): List<String> {
// Escreva o código aqui
}
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