關(guān)于大數(shù)運算,c++選手需要自己編寫高精度算法,而Java則自帶大整數(shù)類。這篇文章簡單記錄一下,關(guān)于Java大數(shù)運算的寫法
必要:
import java.math.BigInteger;
定義一個大數(shù):
BigInteger num = new BigInteger;
大數(shù)數(shù)組定義:
BigInteger [] num = new BigInteger [100];
BigInteger [][] num = new BigInteger [10][10];
給它賦值:
num = BigInteger.valueof(X);
BigInteger num = new BigInteger("123");
基本運算:
BigInteger num1 = new BigInteger("123");
BigInteger num2 = new BigInteger("456");
- 加法
num1 = num1.add(num2);- 減法
num1 = num1.subtract(num2);- 乘法
num1 = num1.multiply(num2);- 除法
num1 = num1.divide(num2);- 取模
num1 = num1.remainder(num2);
小結(jié)
Java大數(shù)運算可能剛開始會感覺比較麻煩,用習慣就好,還有其它的一些操作,比如比較兩個數(shù)(compare),取絕對值(abs),甚至連gcd都直接給封裝好了,所以還是挺方便的,以后再也不頭疼寫c++大數(shù)運算了