round - suma y resta bigdecimal java
¿Cómo puedo dividirme correctamente con BigDecimal? (2)
Mi código de muestra:
import java.math.*;
public class x
{
public static void main(String[] args)
{
BigDecimal a = new BigDecimal("1");
BigDecimal b = new BigDecimal("3");
BigDecimal c = a.divide(b, BigDecimal.ROUND_HALF_UP);
System.out.println(a+"/"+b+" = "+c);
}
}
El resultado es: 1/3 = 0
¿Qué estoy haciendo mal?
Cree BigDecimal
s usando flotantes, como "1.0"
; al menos el numerador, si quieres un resultado decimal.
No has especificado una escala para el resultado. Por favor, intente esto
import java.math.*;
public class x
{
public static void main(String[] args)
{
BigDecimal a = new BigDecimal("1");
BigDecimal b = new BigDecimal("3");
BigDecimal c = a.divide(b,2, BigDecimal.ROUND_HALF_UP);
System.out.println(a+"/"+b+" = "+c);
}
}
esto dará el resultado como 0.33. Por favor lea la API
Rohan