Existe-t-il de toute façon une conversion de la valeur de double
en BigInteger
?
double doubleValue = 64654679846513164.2;
BigInteger bigInteger = (BigInteger) doubleValue;
J'essaye de le lancer mais ça n'a pas marché.
BigInteger est conçu pour contenir des nombres entiers de précision arbitraire, pas des décimales. Vous pouvez utiliser la classe BigDecimal
pour contenir un double.
BigDecimal k = BigDecimal.valueOf(doublevalue);
En général, vous ne pouvez pas taper cast une primitive Java dans une autre classe. Les exceptions que je connais sont les classes étendant Number
, telles que Long
et Integer
classes wrapper, qui vous permettent de transtyper une valeur int en entier, et ainsi de suite.
Vous pouvez convertir le double en BigDecimal
et alors en BigInteger
:
BigInteger k = BigDecimal.valueOf(doublevalue).toBigInteger();