注意除法运算,分母为0的问题,还有就是除法后保留几位小数点的问题
//两个flot相加
public float twoFloatAdd(float a, float b) {
BigDecimal a1 = new BigDecimal(Float.toString(a));
BigDecimal b1 = new BigDecimal(Float.toString(b));
Float add = a1.add(b1).floatValue();
return add;
}
//两个flot相减
public float twoFloatSubtract(float a, float b) {
BigDecimal a1 = new BigDecimal(Float.toString(a));
BigDecimal b1 = new BigDecimal(Float.toString(b));
Float add = a1.subtract(b1).floatValue();
return add;
}
//两个flot除法(保留4位小数点)
public float twoFloatDivide(float a, float b) {
BigDecimal a1 = new BigDecimal(Float.toString(a));
BigDecimal b1 = new BigDecimal(Float.toString(b));
if (b == 0) {
return 0;
}
Float divide = a1.divide(b1, 4, BigDecimal.ROUND_HALF_UP).floatValue();
return divide;
}
//两个flot乘法
public float twoFloatMultiply(float a, float b) {
BigDecimal a1 = new BigDecimal(Float.toString(a));
BigDecimal b1 = new BigDecimal(Float.toString(b));
Float multiply = a1.multiply(b1).floatValue();
return multiply;
}
本文介绍如何在Java中正确处理浮点数加减乘除运算,特别关注分母为0的预防以及结果的四舍五入到四位小数。通过实例展示了如何使用BigDecimal类确保数值运算的准确性。
8531

被折叠的 条评论
为什么被折叠?



