Java BigInteger

Kil*_*ode 3 java biginteger

可能重复:
使用BigInteger进行diffucilty

import java.math.BigInteger;  
public class KillerCode{  
    public static void main(String[]args){  
        BigInteger sum=null;  
        for(int i=1;i<=1000;i++){        
            sum=sum+Math.pow(i, i);  
            System.out.println(sum);     
        }    
    }  
} 
Run Code Online (Sandbox Code Playgroud)

当我尝试运行此代码时,会出现以下错误消息.

对于参数类型BigInteger,double,运算符+未定义.

我怎么解决这个问题?谢谢.

Aus*_*tin 6

你不能使用BigIntegers的典型数学运算符,请查看http://docs.oracle.com/javase/6/docs/api/java/math/BigInteger.html

你需要使用 BigInteger.add(your numbers here)

进一步探索,

sum = sum.add(new BigInteger(i).pow(i));
Run Code Online (Sandbox Code Playgroud)

  • 你还需要重新初始化sum,它不能只是null. (2认同)