回覆列表
-
1 # 滴逃逃
-
2 # 一定支援658
從JDK1.1 開始,Java的math包裡面本來就有BigInteger類。使用時呼叫import就可以,比如:
‘’’Java
import java.math.BigInteger;
‘’’
BigInteger 提供所有 Java 的基本整數運算子的對應物,並提供 java.lang.Math 的所有相關方法。另外,BigInteger 還提供以下運算:模算術、GCD 計算、質數測試、素數生成、位操作以及一些其他操作。參考jdk文件。
比如:求n的階乘n!(一般n大的時候,返回的結果會大於java integer的最大值,所以需要用到biginteger):
static BigInteger factorial(int N)
{
// 初始化返回結果
BigInteger f = new BigInteger("1"); // Or BigInteger.ONE
// 乘以 2, 3, ...N
for (int i = 2; i <= N; i++)
f = f.multiply(BigInteger.valueOf(i));
return f;
}
在java中,Object型別轉換為BigInteger 是分兩步走的。第一步是把Object先轉換為String,第二步是把String轉換成BigInteger。
BigInteger使用需要匯入的包 import java.math.BigInteger;
轉換方法:
Object obj = 123456;
BigInteger big1 = new BigInteger(obj.toString()); 方法一
BigInteger big2 = new BigInteger(String.valueOf(obj)); 方法二
其實上面兩種實質是一樣的,先轉換成String。