(5/9)是整形相除,结果为整形0,(5.0/9)是double类型与整形相除,结果为double类型0.555556。
区别就是整数/整数最后的结果是整数,不保留小数部分,用float类型/整数结果是float类型。
表达式 5/9 返回整数 0,因为除数和被除数都是整数。表达式 5.0/9 相当于 (double)5/9,计算时被除数的9会先转换成浮点数再除。也就是 5.0/9 -> 5.0/(double)9 ,实质上最后一步是两个浮点数相除。