float 和 double 互相运算的时候,建议将float转换为double后统一类型运算。
float转换double时会造成精度丢失,我的一个解决办法是,将float转换为string,再转换为double
如:
float f = 3.141592F
double d = Convert.ToDouble(f.ToString());
double d = Convert.ToDouble(f.ToString());
个人感觉,尽量避免double转float,虽然强制转换不会报错,但是小数位数会丢失,而且超过float长度会四舍五入,这样运算下来的结果就会有误差。
自己总结的一点小经验,希望把你们的经验也分享给我用。