大数值BigInteger和BigDecimal
前言:Java中提供了8种基本数据类型,其中有4种整型和2种浮点型可以进行数值计算。然而,有些时候这几种基本整型和浮点型的精度无法满足需求,此时,可以使用java.math包中的两个可以处理包含任意长度数字序列的数值的类:BigInteger和BigDecimal。
1.BigInteger类
BigInteger类可以实现任意精度的整数运算。使用方法如下:
(1)使用静态方法valueOf()将普通数值转换为大数值:
BigInteger a = BigInteger.valueOf(100);
BigInteger b = BigInteger.valueOf(200);
(2)调用类中对应的方法执行所需的计算:如下列计算a+b,返回一个BigInteger的实例c
(3)BigInteger类相关API
●BigInteger add(BigInteger other)
返回两个大整数的和
●BigInteger subtract(BigInteger other)
返回两个大整数的差
●BigInteger multiply(BigInteger other)
返回两个大整数的乘积
●BigInteger divide(BigInteger other)
返回两个大整数的商
●BigInteger mod(BigInteger other)
返回两个大整数的余数
●int compareTo(BigInteger other)
将一个大整数与另一个大整数比较,如果这个大整数大于另一个大整数other,返回正数;如果两个大整数相等,返回0;如果这个大整数小于另一个大整数other,返回负数
●static BigInteger valueOf(long x)
返回值等于x的大整数
2.BigDecimal类
BigDecimal类可以实现任意精度的浮点数运算。使用方法如下:
(1)使用静态方法valueOf()将普通浮点数值转换为大浮点数值:
BigDecimal a = BigDecimal.valueOf(100.0);
BigDecimal b = BigDecimal.valueOf(200.0);
(2)调用类中对应的方法执行所需的计算:如下列计算a+b,返回一个BigDecimal的实例c
BigDecimal c=a.add(b);
(3)BigDecimal类相关API
●BigDecimal add(BigDecimal other)
返回两个大实数的和
●BigDecimal subtract(BigDecimal other)
返回两个大实数的差
●BigDecimal multiply(BigDecimal other)
返回两个大实数的乘积
●BigDecimal divide(BigDecimal other,RoundingMode mode)
返回两个大实数的商,必须给出舍入方式。例如RoundingMode.HALF_UP即表示四舍五入方式。
●int compareTo(BigDecimal other)
将一个大实数与另一个大实数比较,如果这个大实数大于另一个大实数other,返回正数;如果两个大实数相等,返回0;如果这个大实数小于另一个大实数other,返回负数
●static BigDecimal valueOf(double x)
●static BigDecimal valueOf(long x)
●static BigDecimal valueOf(long x,int scale)
返回值等于x或x/(10的scale次幂)的大实数
最后
以上就是无限御姐最近收集整理的关于Java核心技术知识点笔记—大数值BigInteger和BigDecimal的全部内容,更多相关Java核心技术知识点笔记—大数值BigInteger和BigDecimal内容请搜索靠谱客的其他文章。
发表评论 取消回复