最佳答案
我试着从标准输入中读取一些非常大的数字,然后把它们加在一起。
但是,要添加到 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)的东西吗?