Los operadores lógicos de Kotlin

Los operadores lógicos de Kotlin

Los operadores lógicos de Kotlin nos permiten evaluar condiciones más complejas en los condicionales.

Operador lógicoDescripción
&&y
||or
!not

El operador lógico and de Kotlin

val numero1 = 50
val numero2 = 100
val numero3 = 200

if (numero1 < numero2 && numero2 != numero3) {
    println("Se cumple la condición.")
}
else{
    println("No se cumple la condición.")

Resultado en la consola

Se cumple la condición.

¿Por qué se cumple la condición del if?

En la expresión se indica que numero1 es menor que numero2 (se cumple) y (&&) a la vez numero2 es diferente (no es igual) a numero3.

Si el conjunto de esta expresión se cumple, devuelve true y se ejecuta el código del if, en caso contrario el del else.

El operador and, exige para devolver true, que las dos partes de la expresión se cumplan. En caso contrario, el conjunto dará siempre false, aunque una parte se cumpla.

Expresión izquierda andExpresión derecha andValor final de las dos expresiones
truetruetrue
truefalsefalse
falsetruefalse
falsefalsefalse

En el siguiente ejemplo, no se cumple la parte derecha de la condición, por lo tanto, se ejecuta el else:

val numero1 = 50
val numero2 = 100
val numero3 = 200

if (numero1 < numero2 && numero2 >= numero3) {
    println("Se cumple la condición.")
}
else{
    println("No se cumple la condición.")
}

Resultado en la consola

No se cumple la condición.

El operador lógico or de Kotlin

El operador lógico or (||) de Kotlin, se cumple tanto si es verdadera una parte de la expresión o las dos. Solo dará false y se ejecutará el else si ninguna de las dos se cumple.

Expresión izquierda orExpresión derecha orValor final de las dos expresiones
truetruetrue
truefalsetrue
falsetruetrue
falsefalsefalse

Aquí tienes un ejemplo. Aunque la segunda parte no se cumple, la primera si. Por lo tanto, el conjunto devuelve true y se ejecuta el if.

val numero1 = 50
val numero2 = 100
val numero3 = 200

if (numero1 < numero2 || numero2 >= numero3) {
    println("Se cumple la condición.")
}
else{
    println("No se cumple la condición.")
}

Resultado en la consola

Se cumple la condición.

El operador lógico not de Kotlin

Con el operador de negación not (!) de Kotlin, podemos invertir la evaluación de las expresiones. Es decir, si algo devuelve normalmente true, con este operador devolverá false y a la inversa.

Mira el último ejemplo, se cumple la condición. En cambio, aquí le añado el operador not y se evalúa de forma contraria. Fíjate en que lo que queramos invertir, se pone con unos paréntesis extra y el símbolo "!" antes de ellos:

val numero1 = 50
val numero2 = 100
val numero3 = 200

if (!(numero1 < numero2 || numero2 >= numero3)) {
    println("Se cumple la condición.")
}
else{
    println("No se cumple la condición.")
}

Lo que sería true, da como resultado false:

Resultado en la consola

No se cumple la condición.

No te pierdas la categoría Android para ver el resto de capítulos.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

curso de Python Entrada anterior Las listas de Python y sus métodos
kotlin logo Entrada siguiente El condicional if con else if