Como eu consigo aplicar o DRY no Java? Eu tentei inicializar a variável antes, mas não dá certo:
public class AliquotaImpostoRenda {
public static void main(String[] args) {
double salario = 3300.0;
double imposto = 0;
double aliquota = imposto * salario;
String texto = "Sua aliquota é de: ";
if (salario >= 1900.0 || salario <= 2800.0) {
imposto = 7.5/100;
System.out.println(texto + aliquota);
} else if (salario >= 2800.01 || salario <= 3751.0) {
imposto = 15.0/100;
System.out.println(texto + aliquota);
} else if (salario >= 3751.01 || salario <= 4664.0) {
imposto = 22.5/100;
System.out.println(texto + aliquota);
}
}
}
Porque aí a aliquota vai fazer o cálculo sem levar em consideração os ifs.
Sem inicializar nem compila o código.
public class AliquotaImpostoRenda {
public static void main(String[] args) {
double salario = 3300.0;
double imposto;
double aliquota = imposto * salario;
String texto = "Sua aliquota é de: ";
if (salario >= 1900.0 || salario <= 2800.0) {
imposto = 7.5/100;
System.out.println(texto + aliquota);
} else if (salario >= 2800.01 || salario <= 3751.0) {
imposto = 15.0/100;
System.out.println(texto + aliquota);
} else if (salario >= 3751.01 || salario <= 4664.0) {
imposto = 22.5/100;
System.out.println(texto + aliquota);
}
}
}
Porque diz que imposto pode não ter sido inicializado, quando ele claramente foi.
Eu sei que eu não estou muito a fundo na linguagem, mas... tem que ter alguma forma de fazer isso.