Por poco que hayas tocado Java seguro que estás acostumbrado al uso de la estructura condicional if … else :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
public class IfElse { public static void main(String[] args) { int i, k; i = 10; //obtenemos el valor absoluto de i if (i<0){ k=-i; }else{ k=i; } System.out.println("El valor absoluto de " + i + " es " + k); i = -10; //obtenemos el valor absoluto de i if (i<0){ k=-i; }else{ k=i; } System.out.println("El valor absoluto de " + i + " es " + k); } } |
Pues existe una manera alternativa de escribir estas sentencias if…else tan cortas, que las abrevia incluso más: usando el operador ternario ?. La sintaxis es la siguiente:
1 |
expresion1 ? expresion2 : expresion3 |
Y se interpretaría diciendo que si expresion1 es verdadero, entonces se evalua expresion2, y de lo contrario se evalua expresion3
Repitamos el ejemplo cambiando la estructura if-else por el operador ternario ?:
1 2 3 4 5 6 7 8 9 10 11 12 13 |
public class Ternario { public static void main(String[] args) { int i, k; i = 10; k = i < 0 ? -i : i; // obtenemos el valor absoluto de i System.out.println("El valor absoluto de " + i + " es " + k); i = -10; k = i < 0 ? -i : i; // obtenemos el valor absoluto de i System.out.println("El valor absoluto de " + i + " es " + k); } } |
Como ves, en una única línea asignamos a la variable k el valor que le correspondería dependiendo de si i es negativa o es positiva. Y hemos reducido el número de líneas de código a la mitad.
¡Hasta la próxima!
Los comentarios están cerrados.