Java的严格计算部分
注释:在Math类中,为了达到最快的性能,所有的方法都使用计算机浮点单元中的例程。
如果得到一个完全可预测的结果比运行速度更重要的话,那么就应该使用StrictMath类。
它使用“自由发布的Math库”(fdlibm)实现算法,以确保在所有平台上得到相同的结果。
有关这些算法的源代码请参看www.netlib.org/fdlibm
(当fdlibm为一个函数提供了多个定义时,StrictMath类就会遵循IEEE 754版本,它的名字将以“e”开头)
虚拟机设计者允许对中间计算结果采用扩展的精度。
但是,对于使用strictfp关键字标记的 方法 必须使用严格的浮点计算来生成可再生的结果
如果将一个类标记为strictfp,这个类中的所有方法都要使用严格的浮点计算。
这两种方式的区别仅仅在于采用默认的方式不会产生溢出,而采用严格的计算有可能产生溢出