¿Cómo convertimos BigDecimal
en Double
en Java? Tengo un requisito en el que tenemos que usar Double como argumento, pero lo estamos obteniendo, BigDecimal
así que tengo que convertirlo BigDecimal
en Double
.
112
doubleValue()
Debe utilizar el método para obtener el valor doble de un objeto BigDecimal.
BigDecimal bd; // the value you get
double d = bd.doubleValue(); // The double you want
Puede convertir BigDecimal
a double
using .doubleValue()
. Pero créame, no lo use si tiene manipulaciones monetarias. Siempre debe realizarse en BigDecimal
objetos directamente. La pérdida de precisión en estos cálculos es un gran problema en los cálculos relacionados con la moneda.
Utilice el método doubleValue presente en la clase BigDecimal :
double doubleValue()
Convierte esto BigDecimal
a double
.
new BigDecimal(2).doubleValue()
doubleValue()
. (Sugerencia: para encontrar la documentación de una clase específica, simplemente busque en Google el nombre de la clase, seguido de java. Por ejemplo, para encontrar esta documentación, busqué "BigDecimal Java")BigDecimal
a menos que lo use de un extremo a otro. Este requisito compromete la precisión; puede comprometer el cumplimiento normativo; y puede constituir negligencia procesable.Double
y nodouble
? ¿Es un campo que puede sernull
?double
no es tan malo, pero como tiene más de 15 dígitos de precisión de representación, que es más de lo que la mayoría de los programas necesitan, pero estoy de acuerdo en que no tiene sentido usar BigDecimal algunas veces, ya que es más probable que agregue errores / complejidad.