Estoy tratando de leer algunos números realmente grandes de la entrada estándar y sumarlos.
Sin embargo, para agregar a BigInteger, necesito usar BigInteger.valueOf(long);
:
private BigInteger sum = BigInteger.valueOf(0);
private void sum(String newNumber) {
// BigInteger is immutable, reassign the variable:
sum = sum.add(BigInteger.valueOf(Long.parseLong(newNumber)));
}
Eso funciona bien, pero como BigInteger.valueOf()
solo se necesita una long
, no puedo agregar números mayores que long
el valor máximo (9223372036854775807).
Cada vez que intento agregar 9223372036854775808 o más, obtengo una NumberFormatException (que es completamente esperada).
¿Hay algo así BigInteger.parseBigInteger(String)
?