求问bug : 1.2+1.2=2 两个带小数点相加结果出错,应该怎么解决
求问bug : 1.2+1.2=2 两个带小数点相加结果出错,应该怎么解决
一个有小数点,一个没小数点的都正确
两个数都带小数点 结果会算错
求问bug : 1.2+1.2=2 两个带小数点相加结果出错,应该怎么解决
一个有小数点,一个没小数点的都正确
两个数都带小数点 结果会算错
2016-03-12
貌似会了
注释掉一段就可以正确计算了
然后捣鼓怎么把两个相加结果出现小数点后n位不太对的情况
public static String format2(double value) {
DecimalFormat df = new DecimalFormat("0.00");
df.setRoundingMode(RoundingMode.HALF_UP);
return df.format(value);
}
这一块貌似能实现四舍五入
编程小白出错勿喷~~~~
String s1 = exp.substring(0,exp.indexOf(" "));//运算符前面的字符串 String op = exp.substring(exp.indexOf(" ")+1,exp.indexOf(" ")+2 ); String s2 = exp.substring(exp.indexOf(" ")+3); if(!s1.equals("")&&!s2.equals("")){ double d1 = Double.parseDouble(s1); double d2 = Double.parseDouble(s2); if(op.equals("+")){ result = d1 + d2; }else if(op.equals("-")){ result = d1 - d2; }else if(op.equals("×")){ result = d1 * d2; }else if(op.equals("÷")){ if(d2==0){ result=0; }else{ result = d1 / d2; } } //if(s1.contains(".")&&s2.contains(".")){ // int r = (int)result; // et_input.setText(r+""); // }else{ result = Double.parseDouble(format2(result)); et_input.setText(result+""); // }
举报