Operadores lógicos – Parte 2
Parte da seção Fundamentos do Journey de Kotlin da Coddy. Lição 25 de 93.
O terceiro operador lógico é o NOT (!). Diferentemente de && e ||, que combinam duas condições, o operador NOT funciona com um único valor booleano e o transforma em seu oposto.
Se algo for true, aplicar ! fará com que se torne false. Se for false, ! fará com que se torne true:
fun main() {
val isRaining = true
val isNotRaining = !isRaining
println(isNotRaining) // Imprime: false
val isEmpty = false
println(!isEmpty) // Imprime: true
}O operador NOT é particularmente útil quando você quer verificar o oposto de uma condição. Por exemplo, em vez de verificar se um usuário está conectado, talvez você precise verificar se ele não está conectado:
fun main() {
val isLoggedIn = false
val needsLogin = !isLoggedIn
println(needsLogin) // Imprime: true
}Você também pode aplicar ! diretamente a expressões de comparação, colocando-as entre parênteses:
fun main() {
val age = 15
val cannotVote = !(age >= 18)
println(cannotVote) // Imprime: true
}Desafio
FácilEscreva uma função isUnavailable que receba isAvailable e retorne o valor oposto.
Use o operador NOT (!) para inverter o valor booleano.
Parâmetros:
isAvailable(Boolean): Se algo está disponível no momento
Retorna: true se não estiver disponível, false se estiver disponível (Boolean)
O driver fornecido chama sua função e imprime o valor retornado. Mantenha a assinatura da função e não adicione uma função main.
Experimente você mesmo
fun isUnavailable(isAvailable: Boolean): Boolean {
// Escreva o código aqui
}
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