doubule也没有事,就是加了f不对了
加f的话,它就保留两位小数了,加double就是保留一位小数
首先先说你写的float avg =sum/4 ,那么在实际进行计算时,sum是int型,4也是int型,计算sum/4=105/4 我们知道 计算结果为26.25,但是在计算机中 sum和4都是int型,结果也会被转化成int型,即结果被转化成26(舍去小数),最后再把结果赋值给avg,但是avg是float型,那么原来的26就会被转化成float型,变成小数26.0
接下来说 float avg=sum/4f , 在实际计算时,sum是int型,4f按照java语法默认为double型,即sum/4f运算结果为26.25,最后再把结果赋值给avg,avg是float型,因此avg=26.25