java Math class汉文
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
ng
类 Math
ng.Object
ng.Math
public final class Math
extends Object
Math 类包含用于执行基本数学运算的方法,如初等指数、对数、平方根和三角函数。
与 StrictMath 类的某些数学方法不同,并非 Math 类所有等价函数的实现都定义为返回逐位相同的结果。此类在不需要严格重复的地方可以得到更好的执行。
默认情况下,很多 Math 方法仅调用 StrictMath 中的等价方法来完成它们的实现。建议代码生成器使用特定于平台的本机库或者微处理器指令(可用时)来提供 Math 方法更高性能的实现。这种更高性能的实现仍然必须遵守 Math 的规范。
实现规范的质量涉及到两种属性,即返回结果的准确性和方法的单调性。浮点 Math 方法的准确性根据ulp(units in the last place,最后一位的进退位)来衡量。对于给定的浮点格式,特定实数值的 ulp 是包括该数值的两个浮点值的差。当作为一个整体而不是针对具体参数讨论方法的准确性时,引入的ulp 数用于任何参数最差情况下的误差。如果一个方法的误差总是小于 0.5 ulp,那么该方法始终返回最接近准确结果的浮点数;这种方法就是正确舍入。一个正确舍入的方法通常能得到最佳的浮点近似值;然而,对于许多浮点方法,进行正确舍入有些不切实际。相反,对于 Math 类,某些方法允许误差在 1 或 2 ulp 的范围内。非正式地,对于 1 ulp 的误差范围,当准确结果是可表示的数值时,应该按照计算结果返回准确结果;否则,返回包括准确结果的两个浮点值中的一个。对于值很大的准确结果,括号的一端可以是无穷大。除了个别参数的准确性之外,维护不同参数的方法之间的正确关系也很重要。因此,大多数误差大于 0.5 ulp 的方法都要求是半单调的:只要数学函数是非递减的,浮点近似值就是非递减的;同样,只要数学函数是非递增的,浮点近似值就是非递增的。并非所有准确性为 1 ulp 的近似值都能自动满足单调性要求。
从以下版本开始:
JDK1.0
public static final double E
比任何其他值都更接近e(即自然对数的底数)的 double 值。
另请参见:
常量字段值
PI
public static final double PI
比任何其他值都更接近pi(即圆的周长与直径之比)的 double 值。
另请参见:
public static double sin(double a)
返回角的三角正弦。特殊情况如下:
∙如果参数为 NaN 或无穷大,那么结果为 NaN。
∙如果参数为 0,那么结果为 0,符号与参数符号相同。
计算结果必须在准确结果的 1 ulp 范围内。结果必须具有半单调性。
参数:
a - 以弧度表示的角。
返回:
参数的正弦。
cos
public static double cos(double a)
返回角的三角余弦。特殊情况如下:
∙如果参数为 NaN 或无穷大,那么结果为 NaN。
计算结果必须在准确结果的 1 ulp 范围内。结果必须具有半单调性。
参数:
a - 以弧度表示的角。
返回:
参数的余弦。
tan
public static double tan(double a)
返回角的三角正切。特殊情况如下:
∙如果参数为 NaN 或无穷大,那么结果为 NaN。
∙如果参数为 0,那么结果为 0,符号与参数符号相同。
计算结果必须在准确结果的 1 ulp 范围内。结果必须具有半单调性。
参数:
a - 以弧度表示的角。
返回:
参数的正切。
asin
public static double asin(double a)
返回一个值的反正弦;返回的角度范围在 -pi/2 到pi/2 之间。特殊情况如下:∙如果参数为 NaN 或它的绝对值大于 1,那么结果为 NaN。
∙如果参数为 0,那么结果为 0,符号与参数符号相同。
计算结果必须在准确结果的 1 ulp 范围内。结果必须具有半单调性。
参数:
a - 要返回其反正弦的值。
返回:
参数的反正弦。
acos
public static double acos(double a)
返回一个值的反余弦;返回的角度范围在 0.0 到pi之间。特殊情况如下:∙如果参数为 NaN 或它的绝对值大于 1,那么结果为 NaN。
计算结果必须在准确结果的 1 ulp 范围内。结果必须具有半单调性。
参数:
a - 要返回其反余弦的值。
返回:
参数的反余弦。
atan
public static double atan(double a)
返回一个值的反正切;返回的角度范围在 -pi/2 到pi/2 之间。特殊情况如下:∙如果参数为 NaN,那么结果为 NaN。
∙如果参数为 0,那么结果为 0,符号与参数符号相同。
计算结果必须在准确结果的 1 ulp 范围内。结果必须具有半单调性。
参数:
a - 要返回其反正切的值。
返回:
参数的反正切。
toRadians
public static double toRadians(double angdeg)
将用角度表示的角转换为近似相等的用弧度表示的角。从角度到弧度的转换通常是不精确的。
参数:
angdeg - 用角度表示的角
返回:
角 angrad 用弧度表示的值。
从以下版本开始:
1.2
toDegrees
public static double toDegrees(double angrad)
将用弧度表示的角转换为近似相等的用角度表示的角。从弧度到角度的转换通常是不精确的;用户不应该期望 cos(toRadians(90.0)) 与 0.0 完全相等。
参数:
angrad - 用弧度表示的角。
返回:
角 angrad 用角度表示的值。
从以下版本开始:
1.2
exp
public static double exp(double a)
返回欧拉数e的 double 次幂的值。特殊情况如下:
∙如果参数为 NaN,那么结果为 NaN。
∙如果参数为正无穷大,那么结果为正无穷大。
∙如果参数为负无穷大,那么结果为正 0。
计算结果必须在准确结果的 1 ulp 范围内。结果必须具有半单调性。
参数:
a - e的指数。
返回:
值e a,其中e是自然对数的底数。
log
public static double log(double a)
返回 double 值的自然对数(底数是e)。特殊情况如下:
∙如果参数为 NaN 或小于 0,那么结果为 NaN。
∙如果参数为正无穷大,那么结果为正无穷大。
∙如果参数为正 0 或负 0,那么结果为负无穷大。
计算结果必须在准确结果的 1 ulp 范围内。结果必须具有半单调性。
参数:
a - 一个值
返回:
ln a 的值,即 a 的自然对数。