Red de conocimiento informático - Aprendizaje de programación - ¿Cuál es más eficiente, el operador tripartito de Java o if (condición) más?

¿Cuál es más eficiente, el operador tripartito de Java o if (condición) más?

El operador condicional tripartito no es exactamente el mismo que if...else, y definitivamente no es una encapsulación de if else. Desde el punto de vista de la eficiencia, if else es generalmente mayor, porque la operación de tres ojos también puede implicar problemas de conversión de tipos de datos.

La siguiente es una descripción de las expresiones condicionales en la especificación del lenguaje Java.

_ _ _ _ ● _Si el segundo y tercer operando se pueden convertir a tipos numéricos, ocurre la siguiente situación:

_ _ _ _ _ _ _ ◆ _ Si un operando es de tipo byte o Byte y la otra es de tipo short o short, entonces la expresión es de tipo Short.

_ _ _ _ _ _ ◆ _Cuando un operando es de tipo T (T puede ser byte, short o char) y el otro es una constante de tipo int, que puede representarse por tipo T, entonces la expresión La fórmula es de tipo T..

_ _ _ _ _ _ _ ◆ _Un operando es de tipo byte y el otro es una constante de tipo int, que se puede representar por tipo byte, entonces esta expresión es de tipo Byte.

_ _ _ _ _ _ _ ◆ _Un operando es de tipo corto y el otro es una constante de tipo int, que puede representarse mediante un tipo corto, por lo que esta expresión es de tipo corto.

_ _ _ _ _ _ _ ◆ _El tipo de uno de los operandos es Carácter, y el otro es una constante de tipo int, puedes usar la clase char.

_ _ _ _ _ _ _ _ tipo, entonces el tipo de expresión es char.

_ _ _ _ _ _ _ ◆ _De lo contrario, el tipo de los operandos se promoverá utilizando valores binarios, y el tipo de la expresión condicional será el tipo del segundo y tercer operando. Nota: Las transformaciones de unboxing y las transformaciones de conjuntos de valores se realizan al levantar valores binoculares.