关于java中BigInteger的用法

1.首先导入java.math.BigInteger包;
  import java.math.BigInteger;
2.该类构造方法很多,我用到以下一种:
  BigInteger(String val):将十进制字符串转化成BigInteger
  例如:BigInteger  two = new BigInteger("2");

3.BigInteger模拟了Integer的数学操作:

如add()等同于"+",subtract等同于"-",multiply等同于“*”,divide等同于“/”;运算时必须使用内部方法,操作数必须为BigInteger型。

如:two.add(2)就是一种错误的操作,因为2没有变为BigInteger型。
4.用一个程序熟悉其用法:
import java.math.BigInteger;


public class Test {
public static void main(String[] args) {
BigInteger total=new BigInteger("0"); 
BigInteger base=new BigInteger("2");
for (int i = 0; i < 64; i++) {
total=total.add(base.pow(i));
}
System.out.println(total);
}

}

5 java.math.BigInteger.pow(int exponent)方法

 返回一个BigInteger,其值是 (thisexponent),该指数是一个整数,而不是一个BigInteger。

import java.math.*;

public class BigIntegerDemo {

public static void main(String[] args) {

	// create 2 BigInteger objects
	BigInteger bi1, bi2;

	// create and assign value to exponent
	int exponent = 2;

	// assign value to bi1
	bi1 = new BigInteger("6");

	// perform pow operation on bi1 using exponent
	bi2 = bi1.pow(exponent);

	String str = "Result is " + bi1 + "^" +exponent+ " = " +bi2;

	// print bi2 value
	System.out.println( str );
   }
}

让我们编译和运行上面的程序,这将产生以下结果:

Result is 6^2 = 36

6求很大的素数

素数就是不能再进行等分的整数。比如:7,11。而9不是素数, 因为它可以平分为3等份。一般认为最小的素数是2,接着是3,5

public class Application {  
    public static void main(String[] args) {  
        BigInteger bigInteger = new BigInteger("1");  
        for (int s = 1; s <= 1002; s++) {  
            bigInteger = bigInteger.nextProbablePrime();  //求下一个素数
            System.out.println(s + " : " + bigInteger);  
        }  
    }  
}  


你可能感兴趣的:(java知识)