double avg=sum/4 结果是26.0
double avg=sum/4.0 结果是26.25
请问这两个的输出结果为什么会不一样呢
4.0是double类型,int和double在一起运算时会自动将int的类型提升到double 那么计算的结果也就成了double
所以结果就是26.25
如果是/4 那么两个int计算的结果就是int 结果就是26 然后强转为double 结果就是26.0
使用bigdecimal这个类,里面封装了加减乘除很多方法
因为一个是整形的数 一个是浮点型的数 在计算机里面是不一样的