如何修改现有代码将计算结果四舍五入保留2位小数
代码调整方案
你可以通过以下两种常用方式实现仅显示2位小数的需求,默认均为四舍五入规则:
方法1:使用String.format(简洁推荐)
直接替换你原有的setText行即可,无需额外导入包:
double sum = ((3.141592654/4*(tbmODInput)*(tbmODInput))-(3.141592654/4*(pipeODInput)*(pipeODInput)))*muckUpInput; // %.2f 代表将浮点数格式化为保留2位小数的字符串 volume_per_meter_result.setText(String.format("%.2f", sum));
方法2:使用DecimalFormat(支持更复杂的格式配置)
需要先导入对应类:
import java.text.DecimalFormat; import java.math.RoundingMode;
业务代码调整为:
double sum = ((3.141592654/4*(tbmODInput)*(tbmODInput))-(3.141592654/4*(pipeODInput)*(pipeODInput)))*muckUpInput; // 定义格式化规则,00表示强制保留两位小数,不足补0 DecimalFormat df = new DecimalFormat("#.00"); // 显式设置四舍五入规则,避免不同环境默认规则差异 df.setRoundingMode(RoundingMode.HALF_UP); volume_per_meter_result.setText(df.format(sum));
内容的提问来源于stack exchange,提问作者user2253720
相关产品推荐
相关产品推荐

