Fiz esse teste:
[code]public class TesteArredondamento {
public static void main(String[] args) {
BigDecimal a = new BigDecimal(4.01);
System.out.println(a);
}
}[/code]
O resultado foi 4.0099999999999997868371792719699442386627197265625
Alguém poderia me explicar por que aconteceu isso?
Eu gostaria de salvar um BigDecimal em um campo NUMERIC(18,2) do firebird pelo hibernate. Após salvar, eu irei fazer a pesquisa. Creio que dessa forma terei problemas.
Ex: preciso salvar a altura 4,02. Porém, antes de fazer isso, preciso verificar se o 4,02 já está no banco. Alguma dica para evitar dores de cabeça e erros no programa?
