O operador ternário é uma alternativa leve e compacta para condicionais if/else simples.
Normalmente usado em (mas não restrito a) instruções de retorno, precisa de apenas uma única linha para tomar a decisão, retornando o valor da esquerda se a expressão for true e o da direita se for false, assim:
boolean expr = 0 != 200;
// Ternary statement
int value = expr ? 22 : 33;
// => 22
Muitas expressões if/else simples podem ser simplificadas usando operadores ternários.
Neste exercício, você vai implementar regras para calcular o salário total de um funcionário em um mês. A International Siderurgy Company (ISC) precisa de ajuda para calcular os salários dos funcionários, considerando vários fatores que podem afetar o pagamento final.
Você tem três tarefas e deve usar o operador ternário em vez de condicionais if/else para implementá-las.
Implemente o método salaryMultiplier, que retorna o multiplicador de salário com base no número de dias que um funcionário faltou.
Aplique uma penalidade de 15% se o funcionário faltou a pelo menos cinco dias.
int daysSkipped = 3;
salaryMultiplier(daysSkipped);
// => 1.0
daysSkipped = 7;
salaryMultiplier(daysSkipped);
// => 0.85
Implemente os métodos bonusMultiplier e bonusForProductsSold.
A ISC paga dez unidades monetárias por cada produto vendido e, se um funcionário vender vinte produtos ou mais, o multiplicador sobe para treze.
bonusMultiplier deve determinar qual multiplicador aplicar, e bonusForProductSold deve retornar o bônus total em unidades monetárias.
int productsSold = 21;
bonusMultiplier(productsSold);
// => 13
bonusForProductsSold(productsSold);
// => 273
productsSold = 5;
bonusMultiplier(productsSold);
// => 10
bonusForProductsSold(productsSold);
// => 50
Implemente o método finalSalary.
Ele deve multiplicar o salário-base de 1000.00 pelo multiplicador de salário, adicionar o bônus e retornar o resultado.
No entanto, os salários devem ser limitados a 2000.00.
int daysSkipped = 2;
int productsSold = 3;
finalSalary(daysSkipped, productsSold);
// => 1030.00
productsSold = 90;
finalSalary(daysSkipped, productsSold);
// => 2000.00
Crie sua conta no Exercism para aprender e dominar Java com 26 conceitos158 exercícios e mentoria humana de verdade, tudo de graça.