Estou com um problema estranho. Coloco três valores dentro de um vetor, e verifico se eles são menores do que um certo valor. Nem todos são menores, apesar de usar a condição &&, eu ainda assim entro no If.
Segue a parte do código onde tenho esse problema. Ele faz parte de um código muito mais complexo.
List<Double> valoresFinal = new ArrayList<Double>();
adiciono os valores em umvetor
if((valoresFinal.get(0)<15000) && (valoresFinal.get(1)<15000) && (valoresFinal.get(2)<15000))
{
portaAtual.setStatusPorta(false);
portaDAO.atualizar(portaAtual);
System.out.println("Status:: false");
System.out.println("SIM NESSE IF");
System.out.println("Valor1"+valoresFinal.get(0));
System.out.println("Valor2"+valoresFinal.get(1));
System.out.println("Valor3"+valoresFinal.get(2));
if(portaAtual.isStatusPorta() != portaAtual.isStatusPortaRequerido())
{
statusCorreto(portaAtual);
}
}
}
Esse trecho de código me retorna isso:
Atualizando…
Status:: false
SIM NESSE IF
Valor18496.0
Valor24223.999999999999
Valor313256.0
Como podem ver os valores são maiores que 15000 mas ainda assim estou entrando no if.
Alguém tem alguma ideia do porque?