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

Melhor prática de identação do código JAVA

Boa tarde, turma! tudo bem? Gostaria de saber de vocês qual seria a melhor forma de identar o código abaixo:

Dessa primeira forma,

public class TesteIR {

    public static void main(String[] args) {

        double salary = 3300.00;

        System.out.println("Não deixe de pagar os seus impostos!!");

        if (salary < 1900.00) {
            System.out.println("Pelo valor do seu salário, você não precisa "
                    + "pagar impostos!");

        } else {
            if (salary >= 1900.00 && salary <= 2800.00) {
                System.out.println("O IR a ser pago é de 7.5%, sendo o valor de "
                        + "R$ 142,00 reais!");

            } else {
                if (salary >= 2800.01 && salary <= 3751.00) {
                    System.out.println("O IR a ser pago é 15%, sendo o valor de "
                            + "R$ 350,00 reais!");

                } else {
                    if (salary >= 3751.01 && salary <= 4664.00) {
                        System.out.println("O IR a ser pago é de 22.5%, sendo o "
                                + "valor de R$ 636,00");
                    } else {
                        System.out.println("O IR a ser pago para salários acima "
                                + "de R$ 4664,01 é de 30%");

                    }
                }
            }
        }
    }
}

*ou dessa segunda maneira, *

public class TesteIR {

    public static void main(String[] args) {

        double salary = 3300.00;

        System.out.println("Não deixe de pagar os seus impostos!!");

        if (salary < 1900.00) {
            System.out.println("Pelo valor do seu salário, você não precisa "
                    + "pagar impostos!");

        } else if (salary >= 1900.00 && salary <= 2800.00) {
            System.out.println("O IR a ser pago é de 7.5%, sendo o valor de "
                        + "R$ 142,00 reais!");

        } else if (salary >= 2800.01 && salary <= 3751.00) {
            System.out.println("O IR a ser pago é 15%, sendo o valor de "
                            + "R$ 350,00 reais!");

        } else if (salary >= 3751.01 && salary <= 4664.00) {
            System.out.println("O IR a ser pago é de 22.5%, sendo o "
                                + "valor de R$ 636,00");
        } else {
            System.out.println("O IR a ser pago para salários acima "
                                + "de R$ 4664,01 é de 30%");    
        }     
    }        
}

Desde já, agradeço! Valeu pesssoal!

4 respostas

Olá Laura, a segunda opção é mais indicada. Isso se deve mais por uma questão de legibilidade do código do que propriamente por uma questão de desempenho. Usando a primeira identação a legibilidade do código pode ser comprometida depois que criamos 2 ou mais níveis de condiçoes. Usando a segunda opçao a leitura se torna mais clara e o codigo mais inchuto.

solução!

Olá Eduardo, tudo certo?

Obrigada pela resposta! Eu queria saber mesmo mais por uma coisa de convenção e melhores práticas, porque notei que o código rodou das duas maneiras. Porém, mesmo pra mim, que foi quem digitou o código, a segunda forma foi bem mais fácil de ler!

Forte abraço!

Olá Laura, tudo bem?

A indentação não influencia na compilação do código, você poderia até dar dar enter e quebrar a linha entre o if e a condição lógica que o programa ainda compilaria. Na linguagem java indentação é importante por questões de legibilidade mesmo. Em outras linguagens, como o python, por exemplo, a indentação influencia na execução do código.

Show, obrigada pela resposta, Guilherme!!!