1. La if-elsedeclaración

Los programas no serían muy útiles si siempre hicieran lo mismo, independientemente de cómo cambien las circunstancias externas. Un programa necesita ser capaz de adaptarse a diferentes situaciones y tomar ciertas acciones en algunas situaciones y actuar de manera diferente en otras.

En Java, esto se hace con una declaración condicional , que usa una palabra clave especial que le permite ejecutar diferentes bloques de comandos según el valor de verdad de una condición.

Una sentencia condicional consta de tres partes: condición , sentencia 1 y sentencia 2 . Si la condición es verdadera, entonces se ejecuta la instrucción 1 . De lo contrario, se ejecuta la sentencia 2 . Ambos comandos nunca se ejecutan. Aquí está la apariencia general de este tipo de declaración:

if (condition)
   statement 1;
else
   statement 2;
La if-elsedeclaración condicional

Es bastante comprensible cuando está escrito en un lenguaje sencillo como este:

If condition is true, then
   execute statement 1;
otherwise
   execute statement 2;
La if-elsedeclaración en lenguaje sencillo

Ejemplos:

Código Explicación
int age = 17;
if (age < 18)
   System.out.println("You are still a child");
else
   System.out.println("You are now an adult");
La salida de pantalla será:
You are still a child
int temperature = 5;
if (temperature < 0)
   System.out.println("It's freezing outside");
else
   System.out.println("It's warm");
La salida de pantalla será:
It's warm
int age = 18;
if (age == 18)
   System.out.println("You've been drafted for military service");
else
   System.out.println("Report for duty anyway");
La salida de pantalla será:
You've been drafted for military service


2. Bloque de sentencias

Si la condición se cumple (o no) y desea que su programa ejecute varios comandos, puede combinarlos en un bloque .

Para combinar comandos en un bloque, los "envuelve" entre llaves . Así es como se ve en general:

{
   statement 1;
   statement 2;
   statement 3;
}

Puede tener tantas declaraciones como desee en un bloque. O incluso ninguno.

Ejemplos de una sentencia if-else combinada con un bloque de sentencias:

Código Explicación
int age = 17;
if (age < 18)
{
   System.out.println("You are still a child");
   System.out.println("Don't talk back to adults");
}
else
{
   System.out.println("You are now an adult");
   System.out.println("And thus ends your youth");
}
La salida de pantalla será:
You are still a child
Don't talk back to adults
int temperature = 5;
if (temperature < 0)
{
   System.out.println("It's freezing outside");
   System.out.println("Put on a hat");
}
else
   System.out.println("It's warm");
La salida de pantalla será:
It's warm
int age = 21;
if (age == 18)
   System.out.println("You've been drafted for military service");
else
{
}
Se ejecutará el bloque vacío.
El código funcionará bien, pero no se mostrará nada.

3. Forma abreviada de la ifdeclaración

A veces es necesario ejecutar una o varias declaraciones si la condición es verdadera , pero no se debe hacer nada si es falsa.

Por ejemplo, podemos especificar este comando: , pero no reaccionar si el autobús no está aquí. En Java, este escenario nos permite usar una forma abreviada: una declaración sin bloque.If Bus No. 62 has arrived, then get aboardifelse

En otras palabras, si las declaraciones deben ejecutarse solo si la condición es verdadera y no hay comandos para ejecutar cuando la condición es falsa, entonces debe usar la ifdeclaración, que es concisa y omite el elsebloque. Se parece a esto:

if (condition)
   statement 1;
La ifdeclaración condicional

A continuación se muestran tres ejemplos de código equivalente:

Código Explicación
int age = 18;
if (age == 18)
{
   System.out.println("You've been drafted for military service");
}
else
{
}
La salida de pantalla será:
You've been drafted for military service

El programa tiene un elsebloque, pero está vacío (no hay declaraciones entre las llaves). Simplemente puede eliminarlo. Nada cambiará en el programa.

Código Explicación
int age = 18;
if (age == 18)
{
   System.out.println("You've been drafted for military service");
}
La salida de pantalla será:
You've been drafted for military service
int age = 18;
if (age == 18)
   System.out.println("You've been drafted for military service");
La salida de pantalla será:
You've been drafted for military service