BigDecimal 加减乘除运算

标签: java
6人阅读 评论(0) 收藏 举报
分类:

示例:

package com.ly.test;

import java.math.BigDecimal;

/**
* @author 昨天的邂逅:
* @date 2018年4月16日
* BigDecimal 加减乘除运算
*/

public class MathTest {

/** 
 * 提供精确加法计算的add方法 
 * @param value1 被加数 
 * @param value2 加数 
 * @return 两个参数的和 
 */  
public static double add(double value1, double value2) {  
    BigDecimal b1 = new BigDecimal(Double.valueOf(value1));  
    BigDecimal b2 = new BigDecimal(Double.valueOf(value2));  
    return b1.add(b2).doubleValue();  
}  

/** 
 * 提供精确减法运算的sub方法 
 * @param value1 被减数 
 * @param value2 减数 
 * @return 两个参数的差 
 */  
public static double sub(double value1, double value2) {  
    BigDecimal b1 = new BigDecimal(Double.valueOf(value1));  
    BigDecimal b2 = new BigDecimal(Double.valueOf(value2));  
    return b1.subtract(b2).doubleValue();  
}  

/** 
 * 提供精确乘法运算的mul方法 
 * @param value1 被乘数 
 * @param value2 乘数 
 * @return 两个参数的积 
 */  
public static double mul(double value1, double value2) {  
    BigDecimal b1 = new BigDecimal(Double.valueOf(value1));  
    BigDecimal b2 = new BigDecimal(Double.valueOf(value2));  
    return b1.multiply(b2).doubleValue();  
}  

/** 
 * 提供精确的除法运算方法div 
 * @param value1 分母 
 * @param value2 分子 
 * @param scale 精确范围 
 * @return 两个参数的商 
 * @throws IllegalAccessException 
 */  
public static double div(double value1, double value2, int scale) throws IllegalAccessException {  
    //如果精确范围小于0,抛出异常信息  
    if (scale < 0) {  
        throw new IllegalAccessException("精确度不能小于0");  
    }  
    BigDecimal b1 = new BigDecimal(Double.valueOf(value1));  
    BigDecimal b2 = new BigDecimal(Double.valueOf(value2));  
    return b1.divide(b2, scale).doubleValue();  
}

}

查看评论

BigDecimal加减乘除

BigDecimal bignum1 = new BigDecimal("10");  BigDecimal bignum2 = new BigDecimal("5");  BigDecimal bi...
  • csdn565973850
  • csdn565973850
  • 2017-06-27 19:03:07
  • 2875

java BigDecimal实现精确加减乘除运算

java.math.BigDecimal.BigDecimal一共有4个够造方法,让我先来看看其中的两种用法: 第一种:BigDecimal(double val) 将double转换为BigDec...
  • shadow_zed
  • shadow_zed
  • 2017-06-20 22:48:19
  • 36281

mysql BigDecimal 加减乘除

public static void main(String[] args) {       //默认除法运算精度           final   int   DEF_DIV_SCALE   ...
  • world_the_begin
  • world_the_begin
  • 2017-11-24 17:36:23
  • 313

转:java中BigDecimal加减乘除基本用法

文章转自:http://www.javacui.com/page/2 Java在java.math包中提供的API类BigDecimal,用来对超过16位有效位的数进行精确的运算。双精度浮点型...
  • weixin_38643688
  • weixin_38643688
  • 2017-10-24 16:08:15
  • 139

整数型加减乘除四则混合运算

没有使用递归方法,根据一个完整公式计算对应结果,目前水平有限,显得比较繁琐的感觉,很多都是一步一步测试改进出来的,不知道还有么有BUG。 如果有好的改进,多多指教! /**  * 整形正数加减...
  • op4439
  • op4439
  • 2016-05-03 22:31:02
  • 734

BigDecimal 加减乘除

在java 里面,int 的最大值是:2147483647,现在如果想用比这个数大怎么办?换句话说,就是数值较大,这时候就用到了BigDecimal  下载整理了一下BigDecimal 的加减乘...
  • limingchuan123456789
  • limingchuan123456789
  • 2013-10-09 21:05:04
  • 88263

javascript BigDecimal 大数运算类 单文件浓缩版

  • 2012年09月17日 14:05
  • 8KB
  • 下载

常见对象_BigDecimal的加减乘除法的使用

package cn.itcast_02; import java.math.BigDecimal; /* * 构造方法: * public BigDecimal(String val):...
  • L1585931143
  • L1585931143
  • 2016-12-07 23:48:47
  • 15908

BigDecimal类的加减乘除(解决double计算精度问题)

BigDecimal简介 Java在java.math包中提供的API类BigDecimal,用来对超过16位有效位的数进行精确的运算。双精度浮点型变量double可以处理16位有效数。在实际应用中...
  • qq_28270161
  • qq_28270161
  • 2015-07-09 16:31:07
  • 2429

bigdecimal

  • 2012年12月18日 10:33
  • 2KB
  • 下载
    个人资料
    等级:
    访问量: 219
    积分: 220
    排名: 33万+
    文章分类
    文章存档