最佳答案
我试着从标准输入中读取一些非常大的数字,然后把它们加在一起。
但是,要添加到 BigInteger,我需要使用 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)));
}
这很好,但是由于 BigInteger.valueOf()
只接受 long
,我不能添加大于 long
的最大值(9223372036854775807)的数字。
无论何时尝试添加9223372036854775808或更多,都会出现 NumberFormatException (这是完全可以预料到的)。
有类似 BigInteger.parseBigInteger(String)
的东西吗?