El operador ternario es una alternativa ligera y compacta para sentencias if/else simples.
Por lo general se usa en las sentencias que devuelven un valor (aunque no está limitado a ellas), y necesita una sola línea para tomar la decisión: devuelve el valor de la izquierda si la expresión es true y el de la derecha si es false, así:
boolean expr = 0 != 200;
// Ternary statement
int value = expr ? 22 : 33;
// => 22
Muchas expresiones if/else simples se pueden simplificar usando operadores ternarios.
En este ejercicio, implementarás reglas para calcular el salario total de un empleado en un mes. La International Siderurgy Company (ISC) necesita ayuda para calcular los salarios de sus empleados, teniendo en cuenta diversos factores que pueden afectar el salario final.
Tienes tres tareas y, para implementarlas, debes usar el operador ternario en lugar de sentencias if/else.
Implementa el método salaryMultiplier, que devuelve el multiplicador del salario según la cantidad de días que un empleado faltó al trabajo.
Aplica una penalización del 15% si el empleado faltó al menos cinco días.
int daysSkipped = 3;
salaryMultiplier(daysSkipped);
// => 1.0
daysSkipped = 7;
salaryMultiplier(daysSkipped);
// => 0.85
Implementa los métodos bonusMultiplier y bonusForProductsSold.
La ISC paga diez unidades monetarias por cada producto vendido y, si un empleado vende veinte productos o más, el multiplicador sube a trece.
bonusMultiplier debe determinar qué multiplicador aplicar, y bonusForProductSold debe devolver el bono total en unidades monetarias.
int productsSold = 21;
bonusMultiplier(productsSold);
// => 13
bonusForProductsSold(productsSold);
// => 273
productsSold = 5;
bonusMultiplier(productsSold);
// => 10
bonusForProductsSold(productsSold);
// => 50
Implementa el método finalSalary.
Debe multiplicar el salario base de 1000.00 por el multiplicador del salario, sumar el bono y devolver el resultado.
Sin embargo, los salarios deben estar limitados a 2000.00.
int daysSkipped = 2;
int productsSold = 3;
finalSalary(daysSkipped, productsSold);
// => 1030.00
productsSold = 90;
finalSalary(daysSkipped, productsSold);
// => 2000.00
Regístrate en Exercism para aprender y dominar Java con 26 conceptos158 ejercicios y mentoría humana real, todo gratis.