您的位置:首页 > 编程语言 > Java开发

java中小数的加减乘除

2015-12-04 10:27 429 查看
昨天修改一个项目的时候,突然发现收银时出现了问题,本来是

单价数量折扣=应收金额 或者正常的加减,会突然出现很多个小数,

public static void main(String[] args) {
double kk = 3.14;
kk += 0.37;
float ff = 3.14f;
ff += 0.37f;
System.out.println("double kk =" + kk);
System.out.println("float ff =" + ff);
}


输出结果:
double kk =3.5100000000000002
float ff =3.5100002


小数加减乘除建议用BigDecimal;

public static void main(String[] args) {
//小数加减乘除用BigDecimal
BigDecimal b1 = new BigDecimal("3.14");
BigDecimal b2 = new BigDecimal("0.37");
BigDecimal b3 = b1.add(b2);//
BigDecimal b4 = b1.subtract(b2);//
BigDecimal b5 = b1.multiply(b2);
System.out.println("3.14 + 0.37 = " + b3);
System.out.println("3.14 - 0.37 = " + b4);
System.out.println("3.14 * 0.37 = " + b5);
}


输出:
3.14 + 0.37 = 3.51
3.14 - 0.37 = 2.77
3.14 * 0.37 = 1.1618
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  java 小数 加减乘除