java 如何四舍五入
四舍五入方法
在Java中,可以通过多种方式实现四舍五入操作,以下是几种常见的方法:
使用Math.round()
Math.round()是最直接的四舍五入方法,返回最接近参数的long或int值。
示例代码:

double num = 3.6;
long rounded = Math.round(num); // 结果为4
使用DecimalFormat
DecimalFormat可以格式化数字并控制小数位数,支持四舍五入。
示例代码:

import java.text.DecimalFormat;
double num = 3.14159;
DecimalFormat df = new DecimalFormat("#.##");
String result = df.format(num); // 结果为"3.14"
使用BigDecimal
BigDecimal提供精确的四舍五入控制,适合财务计算等场景。
示例代码:
import java.math.BigDecimal;
import java.math.RoundingMode;
BigDecimal num = new BigDecimal("3.145");
num = num.setScale(2, RoundingMode.HALF_UP); // 结果为3.15
手动实现四舍五入
通过加减0.5后强制类型转换实现简单四舍五入。
示例代码:
double num = 3.6;
int rounded = (int)(num + 0.5); // 结果为4
注意事项
Math.round()对负数同样有效,例如-3.6四舍五入为-4。DecimalFormat和BigDecimal需明确指定舍入模式(如RoundingMode.HALF_UP)。- 浮点数精度问题可能导致预期外的结果,建议对精度要求高的场景使用
BigDecimal。






