为了账号安全,请及时绑定邮箱和手机立即绑定

如何使用BigInteger?

如何使用BigInteger?

炎炎设计 2019-10-16 11:15:36
我有这段代码,它不起作用:BigInteger sum = BigInteger.valueOf(0);for(int i = 2; i < 5000; i++) {    if (isPrim(i)) {        sum.add(BigInteger.valueOf(i));    }}sum变量始终为0。我在做什么错?
查看完整描述

3 回答

?
千万里不及你

TA贡献1784条经验 获得超9个赞

BigInteger是一成不变的。javadocs指出add() “ [r返回一个值为(this + val)的BigInteger。” 因此,您不能更改sum,您需要将add方法的结果重新分配给sum变量。


sum = sum.add(BigInteger.valueOf(i));


查看完整回答
反对 回复 2019-10-16
?
繁花如伊

TA贡献2012条经验 获得超12个赞

sum = sum.add(BigInteger.valueOf(i))

该BigInteger班是不可改变的,因此你不能改变其状态。因此,调用“ add”会创建一个new BigInteger,而不是修改当前值。


查看完整回答
反对 回复 2019-10-16
  • 3 回答
  • 0 关注
  • 670 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信