package cn.itcast_01;
import java.math.BigInteger;
/*
* BigInteger:可以讓超過Integer範圍內的資料進行運算
*
* 構造方法:
* BigInteger(String val)
*/
public class BigIntegerDemo {
public static void main(String[] args) {
// 這幾個測試,是為了簡單超過int範圍內,Integer就不能再表示,所以就更談不上計算了。
Integer i = new Integer(100);
System.out.println(i); //100
System.out.println(Integer.MAX_VALUE); //2147483647
Integer ii = new Integer("2147483647");
System.out.println(ii); //2147483647
//Integer iii = new Integer("2147483648");
//System.out.println(iii); //NumberFormatException
// 通過大整數來建立物件
BigInteger bi = new BigInteger("2147483648");
System.out.println("bi:" + bi); //bi:2147483648
}
}
package cn.itcast_02;
import java.math.BigInteger;
/*
* public BigInteger add(BigInteger val):加
* public BigInteger subtract(BigInteger val):減
* public BigInteger multiply(BigInteger val):乘
* public BigInteger divide(BigInteger val):除
* public BigInteger[] divideAndRemainder(BigInteger val):返回商和餘數的陣列
*/
public class BigIntegerDemo {
public static void main(String[] args) {
BigInteger bi1 = new BigInteger("100");
BigInteger bi2 = new BigInteger("50");
// public BigInteger add(BigInteger val):加
System.out.println("add:" + bi1.add(bi2)); //add:150
// public BigInteger subtract(BigInteger val):減
System.out.println("subtract:" + bi1.subtract(bi2)); //subtract:50
// public BigInteger multiply(BigInteger val):乘
System.out.println("multiply:" + bi1.multiply(bi2)); //multiply:5000
// public BigInteger divide(BigInteger val):除
System.out.println("divide:" + bi1.divide(bi2)); //divide:2
// public BigInteger[] divideAndRemainder(BigInteger val):返回商和餘數的陣列
BigInteger[] bis = bi1.divideAndRemainder(bi2);
System.out.println("商:" + bis[0]); //商:2
System.out.println("餘數:" + bis[1]); //餘數:0
}
}