首页 > 代码库 > 大数处理
大数处理
Java中在BigInteger类中封装了多种操作,除了基本的加、减、乘、除操作之外,还提供了绝对值、相反数、最大公约数以及判断是否为质数等操作。 当使用BigInteger类时,可以实例化一个BigInteger对象,并自动调用相应的构造函数。BigInteger类具有很多构造函数,但最直接的一种方式是参数以字符串形式代表要处理的数字;
BigDecimal和BigInteger都能实现大数字的运算,不同的是BigDecimal加入了小数的概念。一般的float型和double型数据只可以用来做科学计算或工程计算,但由于在商业计算中要求数字精度比较高,所以要用到java.math.BigDecimal类。BigDecimal类支持任何精度的定点数,可以用它来精确计算货币值。
例:
1 public class BigIntegerDemo { 2 public static void main(String[] args) { 3 BigInteger bigInstance = new BigInteger("4"); // 实例化一个大数字 4 // 取该大数字加2的操作 5 System.out.println("加法操作:" + bigInstance.add(new BigInteger("2"))); 6 // 取该大数字减2的操作 7 System.out.println("减法操作:" 8 + bigInstance.subtract(new BigInteger("2"))); 9 // 取该大数字乘以2的操作 10 System.out.println("乘法操作:" 11 + bigInstance.multiply(new BigInteger("2"))); 12 // 取该大数字除以2的操作 13 System.out.println("除法操作:" 14 + bigInstance.divide(new BigInteger("2"))); 15 // 取该大数字除以3的商 16 System.out.println("取商:" 17 + bigInstance.divideAndRemainder(new BigInteger("3"))[0]); 18 // 取该大数字除以3的余数 19 System.out.println("取余数:" 20 + bigInstance.divideAndRemainder(new BigInteger("3"))[1]); 21 // 取该大数字的2次方 22 System.out.println("做2次方操作:" + bigInstance.pow(2)); 23 // 取该大数字的相反数 24 System.out.println("取相反数操作:" + bigInstance.negate()); 25 } 26 }
运行结果:
加法操作:6
减法操作:2
乘法操作:8
除法操作:2
取商:1
取余数:1
做2次方操作:16
取相反数操作:-4
大数处理
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。