java中如何四舍五入保留两位小数
时间: 2024-09-13 14:08:14 浏览: 62
java代码-BigDecimal 四舍五入保留2位小数. 金额从单位分转成单位元
在Java中,你可以使用`DecimalFormat`类或者`Math`类的`round()`方法来四舍五入保留两位小数。以下是两种常见的做法:
1. 使用`DecimalFormat`类:
```java
import java.text.DecimalFormat;
public class Main {
public static void main(String[] args) {
double number = 3.14159;
DecimalFormat df = new DecimalFormat("#.00");
String formattedNumber = df.format(number);
System.out.println(formattedNumber); // 输出 "3.14"
}
}
```
在这个例子中,`"#.00"`是一个模式,它告诉`DecimalFormat`保留两位小数。
2. 使用`Math.round()`方法:
```java
import java.math.BigDecimal;
public class Main {
public static void main(String[] args) {
double number = 3.14159;
BigDecimal bd = new BigDecimal(Double.toString(number));
int scale = 2; // 保留两位小数
bdsetScale(scale);
double roundedNumber = bd.doubleValue();
System.out.println(roundedNumber); // 输出 "3.14"
}
private static void bdsetScale(BigDecimal bd, int scale) {
bd = bd.setScale(scale, RoundingMode.HALF_UP);
}
}
```
这里先将数字转换为`BigDecimal`,然后设置小数位数并指定四舍五入规则。
阅读全文