cara… eu utilizo Bigdecimal para trabalhar com valores e talz… entao… ai vai minha função para truncar um BigDecimal determinado quantas casas decimais:
public static BigDecimal trunc(int decimais, BigDecimal value)
{
double p = Math.pow(10, decimais);
double doubleValue = (value.doubleValue() * p) / p;
try
{
new BigDecimal(doubleValue, MathContext.DECIMAL64).setScale(decimais, RoundingMode.HALF_EVEN);
}
catch(Exception ex)
{
ex.printStackTrace();
return BigDecimal.ZERO;
}
return new BigDecimal(doubleValue, MathContext.DECIMAL64).setScale(decimais, RoundingMode.HALF_EVEN);
}