Double v.s. Float

Double v.s. Float
最近在做自己的玩具项目Physics2D的时候,对Vector2D是应该使用float还是double类型纠结了很久,通常来说(特别是在学校教学当中),大家都会直观的认为float精度输给double,但是速度会远胜于double,毕竟double比float位数长那么一大截,可实际上真的是这样么?昨天阅读了老赵的博客文章,正巧看到了一个不错的CodeTimer实现,空想没用,干脆用实际测试到的数据说话。 下表为微软给出的两个类型的表示范围以及精度,作为一个参考先放在这里: Type Approximate range Precision float ±1.5e−45 to ±3.4e38 7 digits double ±5.0e−324 to ±1.7e308 15-16 digits   我编写了5组测试用例,分别对应加、减、乘、除以及混合的运算,代码如下所示: [crayon-59c2fcd8dfe343725650