java问题求解:为什么System.out.println(Math.cos(Math.PI/2)) 执行后 结果不是0

如题所述

输出结果是6.123233995736766E-17
这个已经很小了,所以近似为0,为什么不直接为0 呢?因为Math.PI其实也只是PI的近似值,如果是PI的精确值的话,结果肯定是0了。
楼下回答的都是错的,居然还有推荐的答案,我擦,这分类管理员也太搞了吧。不看答案就推荐???
温馨提示:内容为网友见解,仅供参考
第1个回答  2012-06-18
Math.PI/2 向高精度转 为1.5几
Math.cos(1.57...)肯定不等于0 啊本回答被网友采纳
第2个回答  2012-06-18
为什么是0。cos(Math.PI/2 明显不等于0
相似回答