Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Seria um erro...?

Seria errado, para este exercício, fazer o método ganhoAnual retornando uma String, com o cálculo feito com uma variável double dentro do método?

String calculoGanhoAnual(){
        double salarioAnual = salario * 12;
        return "Salário anual: " + salarioAnual;
    }
2 respostas
solução!

Oi Paulo, tudo bem?

Não é errado no sentido de não funcionar e etc. E pode atender as necessidades do sistema que você tá fazendo.

Mas na minha opinião não é legal pelo fato de que a responsabilidade do método deveria ser devolver o salário atual. A partir do momento que você devolve uma String, não tem mais uma forma fácil de você pegar esse valor como um double e fazer operações com ele em outro lugar da aplicação.

Imagine que em um ponto da aplicação, por algum motivo, você quer calcular um imposto em cima do ganho anual do funcionário. Digamos que o imposto é de 10%, poderíamos fazer algo como:

double impostoDoSalarioAnual = calculoGanhoAnual() * 0.1;

Se nosso método retorna String, isso não seria possível. Se ele retorna o double com o valor, tudo funciona. E se em outro momento queremos imprimir uma mensagem com o salário atual, podemos fazer:

System.out.prinln("Salário anual: " + calculoGanhoAnual());

Deu pra entender porque pode ser legal separar bem as coisas? Faz sentido?

Abraço!

Faz todo o sentido, Lucas. Eu não havia me atentado para este fato, que acaba reforçando o assunto abordado. Obrigado!