Contenido del Curso
Principios Básicos de Java
Principios Básicos de Java
Sentencia If-Else
Operadores de Comparación
Para empezar, entendamos qué son los operadores de comparación.
Los siguientes son operadores de comparación: >, <, >=, <=, ==, !=. Repasemos rápidamente lo que hace cada uno de ellos:
>
(mayor que) compara si el valor de la izquierda es mayor que el valor de la derecha.<
(menor que) compara si el valor de la izquierda es menor que el de la derecha.>=
(mayor o igual que) compara si el valor de la izquierda es mayor o igual que el valor de la derecha.<=
(menor o igual que) compara si el valor de la izquierda es menor o igual que el valor de la derecha.==
(igual a) compara si los valores de ambos lados son iguales.!=
(no igual a) compara si los valores de ambos lados no son iguales.
Estos operadores se utilizan para comparar valores y devolver un resultado booleano (true
o false
) basado en la comparación.
Sentencia If
La sentencia if
es una parte esencial de cualquier programa. Con la sentencia if
, puedes establecer condiciones para tu programa. La sintaxis y el diagrama de la sentencia if
se ven así:
Main
if (condition) { // code to be executed if it passes the condition } else { // code to be executed if it don't pass the condition }
A continuación se muestra un diagrama de flujo que muestra el uso de una sentencia if
. Antes de entrar en el bloque if
, comprobamos la condición. Si la condición es true
, entramos en el bloque if
y realizamos las operaciones necesarias. Si la condición es false
, omitimos el bloque if
y continuamos con el código.
Nota
Por cierto, el hecho de que todo el código se organice y ejecute en bloques se llama estructuración. Es precisamente porque Java es un lenguaje de programación estrictamente estructurado por lo que es bastante popular.
Veamos un ejemplo con valores reales:
Main
package com.example; public class Main { public static void main(String[] args) { //you can change the values of variables a and b to test the if statement double a = 13.71; double b = 14.01; if (b > a) { System.out. println("b is greater than a"); } if (a > b) { System.out. println("a is greater than b"); } } }
En este código, establecemos una condición. Si el valor de a
es mayor que el de b
, mostramos información al respecto. Si el valor de b
es mayor que el de a
, mostramos información diferente al respecto.
Pero no queda elegante cuando tenemos dos sentencias if separadas. Tenemos una sintaxis específica para situaciones como esta llamada afirmación if-else
. Veamos cómo podemos mejorar el código anterior utilizando la afirmación if-else
:
Main
package com.example; public class Main { public static void main(String[] args) { //you can change the values of variables a and b to test the if statement double a = 13.71; double b = 14.01; if (b > a) { System.out.println("b is greater than a"); } else { System.out.println("a is greater than or equal to b"); } } }
Podemos ver cómo mejoramos nuestro código anterior utilizando la sentencia if-else
. En términos sencillos, comprobamos si el valor de la variable b
es mayor, y si el valor devuelto es false
, entramos en el bloque else
, donde mostramos un mensaje diferente.
Este es el esquema de bloques de la Sentencia If-Else:
Nota
También hay que tener en cuenta que un valor booleano debe almacenarse dentro del paréntesis después de la sentencia if-else. Podemos escribirlo como booleano
bool = b > a;
En este caso, la variable bool contendrá el valortrue
.
Examinemos un fragmento de código en el que comparamos los valores de dos variables para ver si son iguales:
Main
package com.example; public class Main { public static void main(String[] args) { //you can change the values of variables a and b to test the if statement int a = 10; int b = 10; if (a == b) { System.out.println("a equals b"); } else { System.out.println("a is not equal to b"); } } }
Aquí comprobamos si los valores de a
y b
son iguales y mostramos información al respecto. Dado que tanto a
como b
tienen un valor de 10, el resultado será true
, por lo que mostramos el mensaje correspondiente.
else-if chain
Merece la pena mencionar otra sentencia llamada else-if
.
Cuando necesitamos especificar múltiples condiciones de ejecución diferentes, podemos utilizar la siguiente sintaxis:
Main
package com.example; public class Main { public static void main(String[] args) { //you can change the values of variables "a" nad "b" to test the if-else statement int a = 25; int b = 13; if (a > b) { System.out.println("a is greater than b"); } else if (a == b) { System.out.println("a equals b"); } else { System.out.println("b is greater than a"); } } }
En el código anterior, podemos ver que se utilizan varias condiciones diferentes. Por lo tanto, sigue una cadena algorítmica simple. Si la primera condición es false
, comprobamos la segunda, y así sucesivamente. Continuamos haciendo esto hasta que obtenemos true
, o si todas las condiciones devuelven false
, entramos en el familiar bloque else
.
¡Gracias por tus comentarios!