Standart girdiden bazı çok büyük sayıları okumaya ve onları toplamaya çalışıyorum.
Ancak BigInteger'a eklemek için şunu kullanmam gerekiyor 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)));
}
Bu iyi çalışıyor, ancak BigInteger.valueOf()
yalnızca a aldığından long
, long
maksimum değerinden (9223372036854775807) daha büyük sayılar ekleyemiyorum.
9223372036854775808 veya daha fazlasını eklemeye çalıştığımda, bir NumberFormatException (tamamen beklenen) alıyorum.
Gibi bir şey var mı BigInteger.parseBigInteger(String)
?