2
respostas

Eu não usei o else if... quais as implicações ?

eu não utilizei o else if... eu usei else { if...} existe um problema de arquitetura ou boa pratica ?

segue a class.

public class testeIR {
    public static void main(String[] args) {

        double salario=3300.00;

        if(salario>=1900.0 && salario<=2800.0) {
            System.out.println("o IR é de 7.5% e pode deduzir na "
                    + "declaração o valor de R$ 142.00");
        } else {
            if(salario>=2800.01 && salario<=3751.0) {
            System.out.println("o IR é de 15 % e pode deduzir na "
                    + "declaração o valor de R$ 350.00");
        } else {

            if(salario>=3751.01 && salario<=4664.0) {
                System.out.println("o IR é de 22.5 % e pode deduzir na "
                        + "declaração o valor de R$ 636.00");

        }
        }
        }
    }

}
2 respostas

Olá Felipe, tudo bem? Não existe problema nessa forma como você estruturou o código, não precisa ser exatamente igual ao exemplo do curso pois com a prática você se acostuma a fazer de um jeito só, o que realmente importa é que você entenda qual o fluxo que você está definindo e como defini-lo, sendo assim, sem problemas! Espero ter ajudado :)

Olá Felipe, tudo bem ? Em Termos de execução, não há problemas em escrever dessa maneira.

Contudo, a dificuldade não está na escrita e sim na manutenção do código. Veja, nesse seu exemplo condicional, realmente não infere em nada, mas se eu tivesse 12, 15 condições, isso atrapalharia na leitura do código, e impactaria no tempo de manutenção e refatoração (re-escrita).

Como você está iniciando ainda, isso não é um problema, mas fica mais interessante você enxergar o impacto disso se voce escrever num editor como Vim, nano ou bloco de notas. Utilizando a notação reduzida você escreve bem menos.