"1,加了float为什么就是2.37了?"
因为Math.round(f*100)返回的一个int型数据.
而(float)Math.round(f*100)是将int型强转为float型数据
(float)Math.round(f*100)/100是将float型数据除以一个int型数据,float的精度大于int的精度,最终结果当然是返回较大的那个类型的数据,即float型数据.
"2,这里的float转换的是Math.round(f*100)还是Math.round(f*100)/100"
强转的优先级大于算术运算的优先级,所以这里转换的是Math.round(f*100)哦. |