使用BigDecimal对数字保留三位小数代码
时间: 2024-05-27 14:12:28 浏览: 122
可以用以下的 Java 代码实现:
import java.math.BigDecimal;
public class Demo {
public static void main(String[] args) {
BigDecimal num = new BigDecimal(123.456789);
num = num.setScale(3, BigDecimal.ROUND_HALF_UP); // 保留3位小数
System.out.println(num);
}
}
相关问题
BigDecimal 相除并四舍五入保存三位小数
你可以使用Java中的`BigDecimal`类来进行精确计算,并使用`setScale()`方法来设置小数位数,使用`RoundingMode.HALF_UP`表示四舍五入,示例代码如下:
```java
import java.math.BigDecimal;
import java.math.RoundingMode;
public class Main {
public static void main(String[] args) {
BigDecimal a = new BigDecimal("10");
BigDecimal b = new BigDecimal("3");
BigDecimal result = a.divide(b, 3, RoundingMode.HALF_UP);
System.out.println(result);
}
}
```
该程序将输出:`3.333`,即10除以3的结果四舍五入保留三位小数。
其中,第一个参数`3`表示保留三位小数,第二个参数`RoundingMode.HALF_UP`表示四舍五入。你可以将变量`a`和`b`改为任何你想计算的数字。
javadouble输出保留两位小数
在Java中,有多种方法可以输出保留两位小数的double类型数据。以下是三种常用的方法:
1. 使用String.format()方法
可以使用String.format()方法将double类型数据格式化为字符串,然后输出。具体代码如下:
double d = 3.1415926;
String str = String.format("%.2f", d);
System.out.println(str);
2. 使用DecimalFormat类
DecimalFormat类是Java中专门用于格式化数字的类,可以通过它来保留小数点后两位。具体代码如下:
double d = 3.1415926;
DecimalFormat df = new DecimalFormat("#.00");
System.out.println(df.format(d));
3. 使用BigDecimal类
BigDecimal类是Java中进行精确计算的必备工具,其通过setScale方法的四舍五入方式,可以满足商业运作中对数字处理的高精度需求。具体代码如下:
double d = 3.1415926;
BigDecimal bd = new BigDecimal(d);
double result = bd.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();
System.out.println(result);
阅读全文