java中 BigDecimal的类型的除法

100/30 = 3; 100和30都是BigDecimal类型,代码应该怎么写

package cn.itcast_02;  
  
import java.math.BigDecimal;  
  
/* 
 * 构造方法
 *      public BigDecimal(String val): 
 *  
 * 金融相关的东西(例:银行钱的小数,商品价格小数,实验小数) 
 *  
 * 成员方法: 
 *      public BigDecimal add(BigDecimal augend):加 
 *      public BigDecimal subtract(BigDecimal subtrahend):减 
 *      public BigDecimal multiply(BigDecimal multiplicand):乘 
 *      public BigDecimal divide(BigDecimal divisor):除 
 *      public BigDecimal divide(BigDecimal divisor,int scale,int roundingMode):商,几位小数,如何舍取。 
 *       
 */  
public class BigDecimalDemo {  
    public static void main(String[] args) {  
        System.out.println(0.09 + 0.01);  
        System.out.println(1.0 - 0.32);  
        System.out.println(1.015 * 100);  
        System.out.println(1.301 / 100);  
  
        // public BigDecimal add(BigDecimal augend):加  
        BigDecimal bd1 = new BigDecimal("0.09");  
        BigDecimal bd2 = new BigDecimal("0.01");  
        System.out.println("add:" + bd1.add(bd2));  
        System.out.println("----------------------");  
        // public BigDecimal subtract(BigDecimal subtrahend):减  
        BigDecimal bd3 = new BigDecimal("1.0");  
        BigDecimal bd4 = new BigDecimal("0.32");  
        System.out.println("subtract:" + bd3.subtract(bd4));  
        System.out.println("----------------------");  
        // public BigDecimal multiply(BigDecimal multiplicand):乘  
        BigDecimal bd5 = new BigDecimal("1.015");  
        BigDecimal bd6 = new BigDecimal("100");  
        System.out.println("multiply:" + bd5.multiply(bd6));  
        System.out.println("----------------------");  
        // public BigDecimal divide(BigDecimal divisor):除  
        BigDecimal bd7 = new BigDecimal("1.301");  
        BigDecimal bd8 = new BigDecimal("100");  
        System.out.println("divide:" + bd7.divide(bd8));  
        System.out.println("divide:" + bd7.divide(bd8,3,BigDecimal.ROUND_HALF_UP));  
        System.out.println("divide:" + bd7.divide(bd8,9,BigDecimal.ROUND_HALF_UP));  
    }  
}

温馨提示:内容为网友见解,仅供参考
第1个回答  2014-08-13
BigDecimal v1 = new BigDecimal(100);
BigDecimal v2 = new BigDecimal(30);
//结果 两位小数、四舍五入 更多详细精度计算方式请参考API BigDecimal-字段摘要
BigDecimal v3 = v1.divide(v2).setScale(2, BigDecimal.ROUND_HALF_UP);
第2个回答  2014-08-13
static BigDecimal a;
static BigDecimal b;
static BigDecimal c = null;
public static void main(String[] args) {
a = new BigDecimal(100);
System.out.println(a);
b = new BigDecimal(30);
}
第3个回答  2014-08-13
BigDecimal b1 = new BigDecimal("100");
BigDecimal b2 = new BigDecimal("30");
BigDecimal b3 = b1.divide(b2,0,BigDecimal.ROUND_HALF_EVEN);
System.out.println(b3);本回答被提问者采纳

java中bigdecimal类型的变量如何相互加减乘除?
1)BigDecimal sub = ma.subtract(mb);2)System.out.println("减法:"+sub);3、\/\/ 乘;1)BigDecimal mul = mb.multiply(md);2)System.out.println("乘法:"+mul);4、\/\/ 除 1)BigDecimal div = mb.divide(md);2)System.out.println("除法:"+div);3)System.out.println("==="...

java中 BigDecimal的类型的除法?
package cn.itcast_02; import java.math.BigDecimal; \/* * 构造方法: * public BigDecimal(String val): * * 金融相关的东西(例:银行钱的小数,商品价格小数,实验小数) * * 成员方法: * public BigDecimal add(BigDecimal augend):加 * public BigDecimal subtract(...

bigdecimal怎么加减乘除?
(1)BigDecimal sub = ma.subtract(mb)(2)System.out.println("减法:"+sub)3、\/\/ 乘:(1)BigDecimal mul = mb.multiply(md)(2)System.out.println("乘法:"+mul)4、\/\/ 除:(1)BigDecimal div = mb.divide(md)(2)System.out.println("除法:"+div)BigDecimal一共有4个构造方...

bigdecimal加减乘除有哪些?
使用BigDecimal要用String来够造,要做一个加法运算,需要先将两个浮点数转为String,然后够造成BigDecimal,在其中一个上调用add方法,传入另一个作为参数,然后把运算的结果(BigDecimal)再转换为浮点数。需要注意的是除法运算divide:BigDecimal除法可能出现不能整除的情况,比如 4.5\/1.3,这时会报错jav...

java的bigdecimal类的用法
bigdecimal加减乘除运算顺序如下:首先是bigdecimal的初始化,加法 add()函数、减法subtract()函数、乘法multiply()函数、除法divide()函数、绝对值abs()函数。注意:1)System.out.println()中的数字默认是double类型的,double类型小数计算不精准。2)使用BigDecimal类构造方法传入double类型时,计算的结果也是...

BigDecimal类(乘除方法)
关键点在于,要熟练掌握BigDecimal的乘除法技巧。特别是当处理精度控制时,学会结合除法来实现指定小数位数的四舍五入。在学习过程中,我通常采取系统化的方法,比如阅读电子书籍。我通常只是简单浏览目录和前几章的内容,深入学习通常会在实际项目中遇到问题时进行。我涉猎的书籍种类广泛,包括Java基础知识、...

bigdecimal加减乘除运算是什么?
除法运算是BigDecimal处理起来最为复杂的一种运算。由于浮点数的精度问题,直接使用浮点数进行除法可能会导致结果不准确。而BigDecimal类提供的divide方法可以进行高精度的除法运算。这个方法允许指定除法的精度和舍入模式,以确保结果的准确性。当结果超过指定的精度时,可以选择截断或进行四舍五入等处理。总结...

java中bigdecimal 类型的变量怎么相互加减乘除
如图 import java.math.BigDecimal;public class Test { public static void main(String[] args) { \/\/ BigDecimal是处理double精度问题的对象 BigDecimal b1 = new BigDecimal("10"); BigDecimal b2 = new BigDecimal("10"); \/\/ 结果 BigDecimal result = null; \/\/ 加 ...

java中BigDecimal 的加减乘除和“+”“-”“*”“\/”有什么区别_百度知 ...
BigDecimal aDouble =new BigDecimal(1.22); 输出:1.2199999999999999733546474089962430298328399658203125 BigDecimal aString = new BigDecimal("1.22"); 输出:1.22 以上两者输出结果是不一样的。 原因: double的构造方法有不可预知性。 String的构造方法是固定的值。 所以如果类型是Double的话,而且需要精确计算,就用下面方法...

bigdecimal加减乘除运算顺序
说到divide()函数,它在进行除法运算时,需要特别注意设置参数,如所需的精确小数位数和舍入模式,否则可能导致错误。这是因为Java中的BigDecimal类被设计用来处理超过double类型精度的数值,特别是那些无法精确表示的超大或超小数值。总结来说,bigdecimal的运算顺序是以精度为前提,需要合理运用其构造方法和...

相似回答