Java核心技术卷I基础知识(原书第9版)
上QQ阅读APP看书,第一时间看更新

3.5.4 数学函数与常量

在Math类中,包含了各种各样的数学函数。在编写不同类别的程序时,可能需要的函数也不同。

要想计算一个数值的平方根,可以使用sqrt方法:

注释:println方法和sqrt方法存在微小的差异。println方法操作一个定义在System类中的System.out对象。但是,Math类中的sqrt方法处理的不是对象,这样的方法被称为静态方法。有关静态方法的详细内容请参看第4章。

在Java中,没有幂运算,因此需要借助于Math类的pow方法。语句:

将y的值设置为x的a次幂(xa)。pow方法有两个double类型的参数,其返回结果也为double类型。

Math类提供了一些常用的三角函数:

还有指数函数以及它的反函数——自然对数以及以10为底的对数:

最后,Java还提供了两个用于表示和e常量的近似值:

提示:不必在数学方法名和常量名前添加前缀“Math.”,只要在源文件的顶部加上下面这行代码就可以了。

例如:

在第4章中将讨论静态导入。

注释:在Math类中,为了达到最快的性能,所有的方法都使用计算机浮点单元中的例程。如果得到一个完全可预测的结果比运行速度更重要的话,那么就应该使用StrictMath类。它使用“自由发布的Math库”(fdlibm)实现算法,以确保在所有平台上得到相同的结果。有关这些算法的源代码请参看www.netlib.org/fdlibm(当fdlibm为一个函数提供了多个定义时,StrictMath类就会遵循IEEE 754版本,它的名字将以“e”开头)。