关于Java的float类型的保留小数点问题

是float类型默认保留小数点后八位吗?所以输出的结果才是这样吗?

img

float和double都只是用来做近似计算的,都不能精确计算,等于这8位小数只是刚好算出来是那么多;算出来是多少就是多少(不精确),不会有保留
1.0/2 = 0.5 这也只是以为小数,而不是0.50000000 这样;
1.7 / 2.3 = 0.7391304347826088 ,而不是0.73913043