logo

Operador ternario de Java con ejemplos

Operadores constituyen el componente básico de cualquier lenguaje de programación. Java proporciona muchos tipos de operadores que se pueden utilizar según la necesidad de realizar diversos cálculos y funciones, ya sean lógicos, aritméticos, relacionales, etc. Se clasifican según la funcionalidad que proporcionan. Aquí hay algunos tipos:

  1. Operadores aritméticos
  2. Operadores unarios
  3. Operador de asignación
  4. Operadores relacionales
  5. Operadores logicos
  6. Operador ternario
  7. Operadores bit a bit
  8. Operadores de turno

Este artículo explica todo lo que uno necesita saber sobre los operadores ternarios.

Operador ternario en Java

El operador ternario de Java es el único operador condicional que requiere tres operandos. Es un reemplazo de una sola línea para la declaración if-then-else y se usa mucho en la programación Java. Podemos usar el operador ternario en lugar de condiciones if-else o incluso cambiar condiciones usando operadores ternarios anidados. Aunque sigue el mismo algoritmo que la declaración if-else, el operador condicional ocupa menos espacio y ayuda a escribir las declaraciones if-else de la forma más corta posible.



Operador ternario en Java


Sintaxis:

variable = Expression1 ? Expression2: Expression3>

If opera de manera similar a la de la declaración if-else como en Expresión2 se ejecuta si Expresión1 es cierto lo demás Expresión3 es ejecutado.

if(Expression1) {  variable = Expression2; } else {  variable = Expression3; }>

Ejemplo:

num1 = 10; num2 = 20;  res=(num1>número2)? (num1+num2):(num1-num2) Desde num1 se realiza la segunda operación res = num1-num2 = -10>

Diagrama de flujo de operación ternaria

Diagrama de flujo para operador ternario

Ejemplos de operadores ternarios en Java

Ejemplo 1:

A continuación se muestra la implementación del Operador Ternario:

Java
// Java program to find largest among two // numbers using ternary operator import java.io.*; class Ternary {  public static void main(String[] args)  {  // variable declaration  int n1 = 5, n2 = 10, max;  System.out.println('First num: ' + n1);  System.out.println('Second num: ' + n2);  // Largest among n1 and n2  max = (n1>n2)? n1: n2;  // Imprime el número más grande System.out.println('Maximum is = ' + max);  } }>

Producción
First num: 5 Second num: 10 Maximum is = 10>

Complejidad del método anterior:

Complejidad del tiempo: O(1)
Espacio Auxiliar: O(1)

Ejemplo 2:

A continuación se muestra la implementación del método anterior:

Java
// Java code to illustrate ternary operator import java.io.*; class Ternary {  public static void main(String[] args)  {  // variable declaration  int n1 = 5, n2 = 10, res;  System.out.println('First num: ' + n1);  System.out.println('Second num: ' + n2);  // Performing ternary operation  res = (n1>n2)? (n1 + n2) : (n1 - n2);  // Imprime el número más grande System.out.println('Result = ' + res);  } }>

Producción
First num: 5 Second num: 10 Result = -5>

Complejidad del método anterior:

Complejidad del tiempo: O(1)
Espacio Auxiliar: O(1)

Ejemplo 3:

Implementación de operador ternario en valores booleanos:

Java
// Java Program for Implementing  // Ternary operator on Boolean values // Driver Class public class TernaryOperatorExample {  // main function  public static void main(String[] args)  {  boolean condition = true;  String result = (condition) ? 'True' : 'False';    System.out.println(result);  } }>

Producción
True>

Explicación del método anterior:

En este programa, se declara una condición de variable booleana y se le asigna el valor verdadero. Luego, el operador ternario se utiliza para determinar el valor de la cadena de resultado. Si la condición es verdadera, el valor del resultado será Verdadero; de lo contrario, será Falso. Finalmente, el valor del resultado se imprime en la consola.

Ventajas del operador ternario de Java

  • Compacidad : El operador ternario le permite escribir declaraciones simples if-else de una manera mucho más concisa, lo que hace que el código sea más fácil de leer y mantener.
  • Legibilidad mejorada : Cuando se usa correctamente, el operador ternario puede hacer que el código sea más legible al facilitar la comprensión de la intención detrás del código.
  • Mayor rendimiento: Dado que el operador ternario evalúa una sola expresión en lugar de ejecutar un bloque completo de código, puede ser más rápido que una declaración if-else equivalente.
  • Simplificación de declaraciones if-else anidadas: El operador ternario puede simplificar la lógica compleja al proporcionar una forma clara y concisa de realizar asignaciones condicionales.
  • Fácil de depurar : Si ocurre un problema con el código, el operador ternario puede facilitar la identificación de la causa del problema porque reduce la cantidad de código que debe examinarse.

Vale la pena señalar que el operador ternario no reemplaza todas las declaraciones if-else. Para condiciones o lógica complejas, normalmente es mejor usar una declaración if-else para evitar que el código sea más difícil de entender.