java bigdecimal加减乘除
时间: 2023-05-01 18:01:29 浏览: 52
Java 中的 BigDecimal 类可以用来进行精确的浮点数运算。
加法: 使用 add() 方法
减法: 使用 subtract() 方法
乘法: 使用 multiply() 方法
除法: 使用 divide() 方法
示例:
```
BigDecimal a = new BigDecimal("1.0");
BigDecimal b = new BigDecimal("0.9");
BigDecimal c = a.add(b); // c = 1.9
BigDecimal d = a.subtract(b); // d = 0.1
BigDecimal e = a.multiply(b); // e = 0.9
BigDecimal f = a.divide(b); // f = 1.1111...
```
注意 divide() 方法默认是四舍五入的,若要进行精确的除法,需要传入参数(scale, RoundingMode)来指定精度和舍入模式.
例如:
```
BigDecimal f = a.divide(b, 5, RoundingMode.HALF_UP);
```
这样子会返回结果的小数点后5位的值。其中 RoundingMode 是一个枚举类型,可以设置为向上/下舍入等.
相关问题
java bigdecimal 加减乘除
Java 中的 BigDecimal 类可以用来进行精确的浮点数运算。
加法: 使用 add() 方法
减法: 使用 subtract() 方法
乘法: 使用 multiply() 方法
除法: 使用 divide() 方法
示例:
```
BigDecimal a = new BigDecimal("1.0");
BigDecimal b = new BigDecimal("0.9");
BigDecimal c = a.add(b); // c = 1.9
BigDecimal d = a.subtract(b); // d = 0.1
BigDecimal e = a.multiply(b); // e = 0.9
BigDecimal f = a.divide(b); // f = 1.1111...
```
注意 divide() 方法默认是四舍五入的,若要进行精确的除法,需要传入参数(scale, RoundingMode)来指定精度和舍入模式.
例如:
```
BigDecimal f = a.divide(b, 5, RoundingMode.HALF_UP);
```
这样子会返回结果的小数点后5位的值。其中 RoundingMode 是一个枚举类型,可以设置为向上/下舍入等.
java BigDecimal 加减乘除语法
Java中的 BigDecimal 类提供了精确的浮点数运算,包括加减乘除等操作。下面是 BigDecimal 的加减乘除语法示例:
1. 加法:使用 add() 方法进行加法运算。
```java
BigDecimal num1 = new BigDecimal("2.5");
BigDecimal num2 = new BigDecimal("3.5");
BigDecimal sum = num1.add(num2);
System.out.println(sum); // 输出 6.0
```
2. 减法:使用 subtract() 方法进行减法运算。
```java
BigDecimal num1 = new BigDecimal("3.5");
BigDecimal num2 = new BigDecimal("2.5");
BigDecimal diff = num1.subtract(num2);
System.out.println(diff); // 输出 1.0
```
3. 乘法:使用 multiply() 方法进行乘法运算。
```java
BigDecimal num1 = new BigDecimal("2.5");
BigDecimal num2 = new BigDecimal("3.5");
BigDecimal product = num1.multiply(num2);
System.out.println(product); // 输出 8.75
```
4. 除法:使用 divide() 方法进行除法运算。需要注意的是,当除不尽时需要指定精度和舍入规则。
```java
BigDecimal num1 = new BigDecimal("10.0");
BigDecimal num2 = new BigDecimal("3.0");
BigDecimal quotient = num1.divide(num2, 2, RoundingMode.HALF_UP);
System.out.println(quotient); // 输出 3.33
```
在上述示例中,第二个参数表示精度,即小数点后的位数。第三个参数表示舍入规则,此处使用的是四舍五入。