Tome un vistazo a BigDecimal
inmutable, de precisión arbitraria firmado números decimales
Y para responder a su pregunta - sí, se puede tipos de datos de cajas, pero no puede ser primitiva tipos (como int
, double
, etc.). Tienen que ser clases, como en el caso de BigDecimal
(y BigInteger
)
Y un consejo adicional para usar las clases Big*
, tal como están escritas, son inmutables. Esto significa que llamar al add(..)
no cambia el objeto; devuelve un nuevo objeto que refleja el cambio. Es decir.
BigDecimal dec = BigDecimal.ZERO;
dec.add(new BigDecimal(5)); // nothing happens
dec = dec.add(new BigDecimal(5)); // this works
Le recomendaría leer acerca de la programación orientada a objetos. Puede usar clases para definir sus propios tipos de datos. – Jonathan
¡Una clase java definida por el usuario también es un tipo! Simplemente agregue algunos miembros de tipos largo, largo para contener partes completas y fraccionarias de un número. Agregue métodos para agregar/restar ¡y listo! – Elister
@Andreas Hornig no dude en aceptar una respuesta que responda a su pregunta. – Bozho