任意精度整数算法 (BigInteger) 和任意精度小数算法 (BigDecimal)
2017-07-31 12:42
916 查看
在使用BigDecimal类来进行计算的时候,主要分为以下步骤:
用float或者double变量构建BigDecimal对象。
通过调用BigDecimal的加,减,乘,除等相应的方法进行算术运算。
把BigDecimal对象转换成float,double,int等类型。
new BigDecimal(...)填写构造函数的时候,要使用String,而不要使用float或者double,否则同样会引起精度丢失
使用BigDecimal的构造方法或者静态方法的valueOf()方法把基本类型的变量构建成BigDecimal对象。
加减乘除
将BigDecimal对象转换成相应的基本数据类型的变量,可以使用floatValue(),doubleValue()等方法。
BigInteger和BigDecimal差不多
用float或者double变量构建BigDecimal对象。
通过调用BigDecimal的加,减,乘,除等相应的方法进行算术运算。
把BigDecimal对象转换成float,double,int等类型。
new BigDecimal(...)填写构造函数的时候,要使用String,而不要使用float或者double,否则同样会引起精度丢失
使用BigDecimal的构造方法或者静态方法的valueOf()方法把基本类型的变量构建成BigDecimal对象。
//float和double类型传入到BigDecimal中传入String类型,建议采用下面这种方式: BigDecimal b1 = new BigDecimal(Double.toString(0.48)); BigDecimal b2 = BigDecimal.valueOf(0.48);
加减乘除
public BigDecimal add(BigDecimal value); //加法 public BigDecimal subtract(BigDecimal value); //减法 public BigDecimal multiply(BigDecimal value); //乘法 public BigDecimal divide(BigDecimal value); //除法
将BigDecimal对象转换成相应的基本数据类型的变量,可以使用floatValue(),doubleValue()等方法。
BigInteger和BigDecimal差不多
相关文章推荐
- java 大数类 总结 整数小数(BigInteger和BigDecimal)
- C语言之基本算法29—整数任意次方的最后三位数(精度问题)
- 【正整数模板运算(C++手写BigInteger类和java.math.BigInteger以及java.math.BigDecimal)】
- BigInteger和BigDecimal--数字运算精度的设置
- 【java】BigDecimal、BigInteger、大数相乘、数值的整数次方、快速乘法
- java BigInteger和BigDecimal
- 链表实现任意精度整数运算
- BigInteger与BigDecimal
- 解决JavaScript 中小数和大整数的精度丢失
- JAVA大数处理(BigInteger,BigDecimal)
- JavaSE----API之常用类(Math、Random、System、BigInteger和BigDecimal、Date和DateFormat、Calendar)
- 用BigInteger实现大素数生成算法
- Java中正则表达式和常用的Math、Random、System、BigInteger、BigDecimal、Date/DateFormat、Calendar类的使用
- 处理大数字BigInteger与BigDecimal
- 【算法面试题】从1-200中任意选出101个自然数,其中一个数必是另一个数的整数倍
- java.math中NumberFormat,Math,BigInteger和BigDecimal的简单用法
- 带小数的String转整数Integer
- 设计算法把一个十进制的整数转换成二至九进制之间的任意进制输出
- JAVA BigInteger 类用例 1:求一个大整数的平方根的整数部分 (SGU 111)
- java 中的大数据类型(BigInteger和BigDecimal)