El condicional IF y los operadores de comparación en Kotlin

El condicional IF y los operadores de comparación en Kotlin

En esta ocasión empezamos con los condicionales IF, con ellos conseguirás que tus apps con Kotlin sean capaces de tomar decisiones. De esta forma, las apps podrán ir ejecutando cosas según lo que vaya haciendo el usuario en ellas.

El tipo Boolean con los condicionales

El tipo Boolean es fundamental en el caso de los condicionales, ya que estos van a tomar las decisiones de ejecutar ciertos bloques de código en torno a resultados booleanos de true o false.

Los operadores de comparación

A lo largo del curso, iremos utilizando los operadores de comparación que ves a continuación. Hay más, pero de momento, estos son suficientes para los ejemplos del capítulo.

OperadorDescripción
<Menor que
<=Menor o igual que
>Mayor que
>=Mayor o igual que
!=Diferente que
==Igual que

La sentencia IF en Kotlin

condicional if en kotlin

Vamos a realizar un pequeño código que sea capaz de ejecutar cierto código cuando se cumpla una condición.

El operador menor que

val numero1 = 100

// Se compara si el valor de numero1 es menor que 500
if (numero1 < 500){
    println("$numero1 es menor que 500.")
}

Resultado en la consola

100 es menor que 500.

En este caso, la comparación que hay entre los paréntesis del if devuelve internamente un valor booleano true, que le indica al programa que debe ejecutar el código de las llaves del if.

Sin embargo, y si la condición es false, ¿"numero1" ya no es menor que 500?

val numero1 = 7000

// Se compara si el valor de numero1 es menor que 500
if (numero1 < 500){
    println("$numero1 es menor que 500.")
}

En este caso, la expresión de los paréntesis devuelve internamente un valor Boolean false, que le indica que no debe ejecutar el código de las llaves del if.

Todo el código que no pertenezca al if se ejecutará con normalidad y no habrá errores, solo se ignora el código del if que da false.

Formateo de strings en Kotlin

Por cierto, con el símbolo dólar ($) y el nombre de la variable en el string del println(), lo que hago es incrustar directamente el valor de la variable en el string. Esto se conoce como formateo de strings.

El operador mayor que

El operador mayor que, compara si un valor es mayor que otro. Hace lo contrario al anterior.

val numero1 = 7000

// Se compara si el valor de numero1 es mayor que 500
if (numero1 > 500){
    println("$numero1 es mayor que 500.")
}

Resultado en la consola

7000 es mayor que 500.

La condición es true y por lo tanto, se ejecuta el código.

Los operadores menor y mayor o igual que

Los operadores mayor o igual que y menor o igual que comparan si un valor es igual o es mayor o es menor o igual respectivamente.

val numero1 = 500

// Se compara si el valor de numero1 es mayor o igual que 500
if (numero1 >= 500){
    println("$numero1 es mayor o igual que 500.")
}

Resultado en la consola

500 es mayor o igual que 500.

Puesto que "numero1" es igual a 500, devuelve true y se ejecuta. Si el número fuese mayor, también.

Aplica lo mismo para el operador menor o igual que pero a la inversa.

El operador diferente que

El operador diferente que evalúa si un valor es diferente a otro.

val numero1 = 100

// Se compara si el valor de numero1 es diferente que 500
if (numero1 != 500){
    println("$numero1 es diferente que 500.")
}

Resultado en la consola

100 es diferente que 500.

Cualquier valor diferente a 500 dará true y se ejecutará el código del if. Si es igual a 500, dará false y no se ejecutará.

Para que lo entiendas mejor, en una conversación natural entre personas, sería así:

"numero1 vale 100". (val numero1 = 100)

¿"numero1" es diferente que 500? Verdadero. (if (numero1 != 500))

Ok. Entonces, ejecuta el código.

Y si el número es igual a 500...

"numero1 vale 500". (val numero1 = 500)

¿"numero1" es diferente que 500? Falso. (if (numero1 != 500))

Ok. Entonces, no ejecutes el código.

El operador igual que

El operador igual que compara si dos valores son iguales. Si lo son, devuelve true, si no, false.

Que no te confunda el operador "=" con "==". Mientras que el primero es el operador de asignación y sirve solo para asignar valores a variables, por ejemplo, el operador "==" igual compara igualdad. No sirve el primero en una condición.

val numero1 = 500

// Se compara si el valor de numero1 es igual que 500
if (numero1 == 500){
    println("$numero1 es igual que 500.")
}

Resultado en la consola

500 es igual que 500.

Por el momento, todas estas comparaciones son un poco absurdas. No obstante, las he simplificado mucho para que todo el mundo pueda entender como funcionan. Poco a poco añadiré más dificultad y ejemplos más prácticos.

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 *

tipos de datos kotlin Entrada anterior Los tipos de datos principales de Kotlin
curso de Python Entrada siguiente Instalación de Python y Visual Studio Code