>
Mostrando entradas con la etiqueta bigdecimal. Mostrar todas las entradas
Mostrando entradas con la etiqueta bigdecimal. Mostrar todas las entradas

22 octubre 2012

Operaciones con Decimales en Java (redondeo)

Si necesitáis realizar operaciones con  números decimales tienes que utilizar java.math.BigDecimal, en el siguiente ejemplo comprobamos que la variable numericoDecimal no es 0 y le asignamos la operación multiplicación de un Double y una división por un int redondeado los decimales hacia arriba:
import java.math.BigDecimal;
import java.math.RoundingMode;

public class Prueba {
 public static void main(String[] args) {
  Double numeroDecimal2= new Double(24.2);
  BigDecimal numericoDecimal = new BigDecimal(24.5);

  // comprobacion si el valor del BigDecimal es 0
  numericoDecimal= numericoDecimal.compareTo(BigDecimal.ZERO) != 0 ?
   numericoDecimal.multiply(BigDecimal.valueOf(numeroDecimal2)).divide(BigDecimal.valueOf(12), RoundingMode.HALF_UP) 
   : BigDecimal.ZERO;
  System.out.println(numericoDecimal);
 }
}

La salida da 49.41