Java大數的一些整理體會
來源:互聯網
上載者:User
【轉】 Java大數的一些整理體會大數的兩個庫BigInteger,BigDecimal。分別是大整數和大實數(具體有多大不詳)。操作:1. 包含:import java.math.*;2. 申請:單個元素:BigInteger a, b; BigDecimal a, b;數組:BigInteger a[];a = new BigInteger[1024];BigDecimal a[];a = new BigDecimal[1024];3. 賦值:a[1] = BigDecimal.valueOf(1);a[1] = BigInteger.valueOf(1);4. 加減乘除:BigInteger a, b;a = BigInteger.valueOf(1);b = BigInteger.valueOf(2);System.out.println(a.add(b));System.out.println(a.subtract(b));System.out.println(a.multiply(b));System.out.println(a.divide(b)); BigDecimal a, b; a = BigDecimal.valueOf(5); b = BigDecimal.valueOf(3); System.out.println(a.add(b)); System.out.println(a.subtract(b)); System.out.println(a.multiply(b)); System.out.println(a.divide(BigDecimal.valueOf(1))); //這裡要整除,否則會RE System.out.println(a.divide(b, 4, 4)); //這裡不太明白第3個參數是什麼意思 System.out.println(a.divide(b, 4, BigDecimal.ROUND_HALF_UP)); //這裡第二個參數是保留位元,第三個參數是進位方式。5. 比較大小:BigDecimal a, b; a = BigDecimal.valueOf(5); b = BigDecimal.valueOf(3); if(a.compareTo(b) > 0) System.out.println("a is greater than b"); else if(a.compareTo(b) == 0) System.out.println("a is equal to b"); else if(a.compareTo(b) < 0) System.out.println("a is lower than b");