Java Si...Si no
La sentencia if...else
en Java es una construcción de flujo de control fundamental que te permite ejecutar determinados bloques de código basándote en condiciones especificadas. Se utiliza para tomar decisiones en tu programa, permitiendo diferentes acciones basadas en diferentes entradas o estados.
Utilización
La sentencia if...else
evalúa una expresión booleana. Si la expresión se evalúa como true
, se ejecuta el bloque de código que sigue a la sentencia if
. Si se evalúa como false
, se ejecuta el bloque de código que sigue a la sentencia else
.
Syntax
if (condition) {
// code block to be executed if condition is true
} else {
// code block to be executed if condition is false
}
condition
: Una expresión booleana que se evalúa mediante la sentenciaif
.- El bloque
else
es opcional y sólo se ejecuta si la condiciónif
se evalúa comofalse
.
Ejemplos
Ejemplo 1: Básico if...else
Declaración
public class IfElseExample {
public static void main(String[] args) {
int number = 10;
if (number > 0) {
System.out.println("The number is positive.");
} else {
System.out.println("The number is not positive.");
}
}
}
En este ejemplo, el programa comprueba si el number
es mayor que cero. Como number
es 10, que es positivo, imprime "El número es positivo".
Ejemplo 2: if...else
con afecciones múltiples
public class IfElseMultipleConditions {
public static void main(String[] args) {
int score = 75;
if (score >= 90) {
System.out.println("Grade: A");
} else if (score >= 80) {
System.out.println("Grade: B");
} else if (score >= 70) {
System.out.println("Grade: C");
} else {
System.out.println("Grade: F");
}
}
}
Este ejemplo demuestra el uso de else if
para manejar múltiples condiciones. El programa asigna una nota en función de la score
. Como la puntuación es 75, imprime "Calificación: C."
Ejemplo 3: Anidado if...else
Declaraciones
public class NestedIfElseExample {
public static void main(String[] args) {
int age = 20;
boolean hasLicense = true;
if (age >= 18) {
if (hasLicense) {
System.out.println("You can drive.");
} else {
System.out.println("You need a license to drive.");
}
} else {
System.out.println("You are too young to drive.");
}
}
}
En este ejemplo, se utilizan sentencias if...else
anidadas para comprobar tanto la edad como la posesión de un permiso de conducir. El programa emite "Puedes conducir", ya que se cumplen las condiciones.
Consejos y buenas prácticas
- Legibilidad: Mantén tus condiciones simples y claras para una mejor legibilidad. Las condiciones complejas pueden descomponerse en varias frases
if...else
. - Evita la anidación profunda: Un anidamiento excesivo puede dificultar la lectura del código. Plantéate utilizar operadores lógicos (
&&
,||
) o dividir la lógica en métodos separados. - Utiliza
else if
para múltiples afecciones: Cuando tengas varias condiciones que comprobar, utilizaelse if
para evitar evaluaciones innecesarias y mejorar el rendimiento. - Tirantes
{}
Utilización: Utiliza siempre corchetes{}
incluso para bloques de una sola línea. Esto mejora la legibilidad y evita errores durante el mantenimiento del código. - Expresiones booleanas: Asegúrate de que tus expresiones booleanas son correctas y tienen sentido para el contexto de la lógica de tu aplicación.