En este tutorial, aprenderá acerca de las declaraciones de flujo de control usando Java if y if … else con la ayuda de ejemplos.
En programación de computadoras, usamos la instrucción if para controlar el flujo del programa. Por ejemplo, si se cumple una determinada condición, ejecute un bloque de código específico. De lo contrario, ejecute otro código.
Por ejemplo, asignar calificaciones (A, B, C) según el porcentaje obtenido por un estudiante.
- si el porcentaje es superior a 90 , asigne una calificación A
- si el porcentaje es superior a 75 , asigne una calificación B
- si el porcentaje es superior a 65 , asigne una calificación C
Hay tres formas de if… else
declaraciones en Java.
- si declaración
- declaración if … else
- declaración if … else if … else
- Declaración if … else anidada
1. Declaración if (if-then) de Java
La sintaxis de una declaración if-then :
if (condition) ( // statements )
Aquí, la condición es una expresión booleana. Devuelve true
o false
.
- si la condición se evalúa
true
,if
se ejecutan las declaraciones dentro del cuerpo de - si la condición se evalúa como
false
,if
se omiten las declaraciones dentro del cuerpo de
¿Cómo si funciona la declaración?

Ejemplo 1: Declaración if de Java
class IfStatement ( public static void main(String() args) ( int number = 10; // checks if number is greater than 0 if (number> 0) ( System.out.println("The number is positive."); ) System.out.println("Statement outside if block"); ) )
Salida
El número es positivo. Declaración fuera del bloque if
En el ejemplo anterior, hemos creado una variable llamada número. Observe la condición de prueba,
number> 0
Aquí, la condición es verificar si el número es mayor que 0 . Dado que el número es mayor que 0 , la condición se evalúa true
.
Si cambiamos la variable a un entero negativo. Digamos -5 .
int number = -5;
Ahora, cuando ejecutemos el programa, la salida será:
Statement outside if block
Esto se debe a que el valor de número es menor que 0 . Por lo tanto, la condición se evalúa como false
. Y if
se omite el cuerpo del bloque.
Nota : Para obtener más información sobre la expresión de condiciones, asegúrese de visitar Operadores relacionales de Java y Operadores lógicos de Java.
También podemos usar Java Strings como condición de prueba.
Ejemplo 2: Java si con String
class Main ( public static void main(String() args) ( // create a string variable String language = "Java"; // if statement if (language == "Java") ( System.out.println("Best Programming Language"); ) ) )
Salida
Mejor lenguaje de programación
En el ejemplo anterior, comparamos dos cadenas en el if
bloque.
2. Declaración de Java if … else (if-then-else)
La if
instrucción ejecuta una determinada sección de código si se evalúa la expresión de prueba true
. Sin embargo, si la expresión de prueba se evalúa false
, no hace nada.
En este caso, podemos utilizar un else
bloque opcional . Las declaraciones dentro del cuerpo del else
bloque se ejecutan si la expresión de prueba se evalúa como false
. Esto se conoce como la instrucción if-… else en Java.
La sintaxis de la instrucción if … else es:
if (condition) ( // codes in if block ) else ( // codes in else block )
Aquí, el programa hará una tarea (códigos dentro del if
bloque) si la condición es true
y otra tarea (códigos dentro del else
bloque) si la condición es false
.
¿Cómo funciona la sentencia if… else?

Ejemplo 3: Declaración if… else de Java
class Main ( public static void main(String() args) ( int number = 10; // checks if number is greater than 0 if (number> 0) ( System.out.println("The number is positive."); ) // execute this block // if number is not greater than 0 else ( System.out.println("The number is not positive."); ) System.out.println("Statement outside if… else block"); ) )
Salida
El número es positivo. Declaración fuera del bloque if … else
En el ejemplo anterior, tenemos una variable llamada número. Aquí, la expresión de prueba number> 0
verifica si el número es mayor que 0.
Dado que el valor del número es 10, la expresión de prueba se evalúa como true
. Por lo tanto, if
se ejecuta el código dentro del cuerpo de .
Ahora, cambie el valor del número a un entero negativo. Digamos -5.
int number = -5;
Si ejecutamos el programa con el nuevo valor de número, la salida será:
El número no es positivo. Declaración fuera del bloque if … else
Aquí, el valor del número es -5. Entonces, la expresión de prueba se evalúa como false
. Por lo tanto, else
se ejecuta el código dentro del cuerpo de .
3. Java if … else … if Statement
En Java, tenemos una escalera if… else… if , que se puede usar para ejecutar un bloque de código entre muchos otros bloques.
if (condition1) ( // codes ) else if(condition2) ( // codes ) else if (condition3) ( // codes )… else ( // codes )
Aquí, las if
declaraciones se ejecutan de arriba hacia abajo. Cuando la condición de prueba es true
, if
se ejecutan códigos dentro del cuerpo de ese bloque. Y el control del programa salta fuera de la escalera if … else … if .
Si todas las expresiones de prueba lo son false
, else
se ejecutan los códigos dentro del cuerpo de .
¿Cómo funciona la escalera if… else… if?

Ejemplo 4: Java if … else … if Statement
class Main ( public static void main(String() args) ( int number = 0; // checks if number is greater than 0 if (number> 0) ( System.out.println("The number is positive."); ) // checks if number is less than 0 else if (number < 0) ( System.out.println("The number is negative."); ) // if both condition is false else ( System.out.println("The number is 0."); ) ) )
Salida
El número es 0.
In the above example, we are checking whether number is positive, negative, or zero. Here, we have two condition expressions:
number> 0
- checks if number is greater than 0number < 0
- checks if number is less than 0
Here, the value of number is 0. So both the conditions evaluate to false
. Hence the statement inside the body of else
is executed.
Note: Java provides a special operator called ternary operator, which is a kind of shorthand notation of if… else… if statement. To learn about the ternary operator, visit Java Ternary Operator.
4. Java Nested if… else Statement
En Java, también es posible utilizar if… else
declaraciones dentro de una if… else
declaración. Se llama if… else
declaración anidada .
Aquí hay un programa para encontrar el mayor de 3 números usando la if… else
declaración anidada .
Ejemplo 5: instrucción if… else anidada
class Main ( public static void main(String() args) ( // declaring double type variables Double n1 = -1.0, n2 = 4.5, n3 = -5.3, largest; // checks if n1 is greater than or equal to n2 if (n1>= n2) ( // if… else statement inside the if block // checks if n1 is greater than or equal to n3 if (n1>= n3) ( largest = n1; ) else ( largest = n3; ) ) else ( // if… else statement inside else block // checks if n2 is greater than or equal to n3 if (n2>= n3) ( largest = n2; ) else ( largest = n3; ) ) System.out.println("Largest Number: " + largest); ) )
Salida :
Número más grande: 4.5
En los programas anteriores, nos hemos asignado el valor de las variables para facilitar esto.
Sin embargo, en aplicaciones del mundo real, estos valores pueden provenir de datos de entrada del usuario, archivos de registro, envío de formularios, etc.