av激情亚洲男人的天堂国语,日韩欧美精品一中文字幕,无码av一区二区三区无码,国产又色又爽又刺激的a片,国产又色又爽又刺激的a片

創(chuàng)新互聯(lián)鴻蒙OS教程:鴻蒙OSMath

Math

創(chuàng)新互聯(lián)-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價比平橋網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式平橋網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋平橋地區(qū)。費用合理售后完善,10年實體公司更值得信賴。

java.lang.Object

|---java.lang.Math

public final class Math
extends Object

Math 類包含執(zhí)行基本數(shù)值運算的方法,例如初等指數(shù)、對數(shù)、平方根和三角函數(shù)。

與 StrictMath 類的一些數(shù)值方法不同,Math 類的等效函數(shù)的所有實現(xiàn)都未定義為返回逐位相同的結(jié)果。這種放松允許在不需要嚴格的再現(xiàn)性的情況下實現(xiàn)更好的性能。

默認情況下,許多 Math 方法只是簡單地調(diào)用 StrictMath 中的等效方法來實現(xiàn)它們。鼓勵代碼生成器在可用的情況下使用特定于平臺的本機庫或微處理器指令,以提供更高性能的數(shù)學(xué)方法實現(xiàn)。這種更高性能的實現(xiàn)仍然必須符合 Math.xml 的規(guī)范。

實現(xiàn)規(guī)范的質(zhì)量涉及兩個屬性,返回結(jié)果的準確性和方法的單調(diào)性。浮點數(shù)學(xué)方法的準確性以 ulps 為單位,最后的單位。對于給定的浮點格式,特定實數(shù)值的 ulp 是包圍該數(shù)值的兩個浮點值之間的距離。當(dāng)討論一個方法作為一個整體而不是一個特定參數(shù)的準確性時,引用的 ulp 數(shù)量是針對任何參數(shù)的最壞情況錯誤。如果一個方法的誤差總是小于 0.5 ulps,該方法總是返回最接近精確結(jié)果的浮點數(shù);這種方法是正確四舍五入的。正確舍入的方法通常是浮點近似的最佳方法;但是,正確舍入許多浮點方法是不切實際的。相反,對于 Math 類,某些方法允許更大的誤差范圍為 1 或 2 ulps。非正式地,在 1 ulp 誤差范圍內(nèi),當(dāng)精確結(jié)果是可表示的數(shù)字時,精確結(jié)果應(yīng)作為計算結(jié)果返回;否則,可以返回包含確切結(jié)果的兩個浮點值中的任何一個。對于數(shù)量級較大的精確結(jié)果,括號的端點之一可能是無限的。除了個別論點的準確性外,保持不同論點的方法之間的適當(dāng)關(guān)系也很重要。因此,大多數(shù) ulp 誤差大于 0.5 的方法都要求是半單調(diào)的:只要數(shù)學(xué)函數(shù)不減,浮點逼近也是如此,同樣,只要數(shù)學(xué)函數(shù)不增,浮點逼近也是點近似。并非所有具有 1 ulp 精度的近似值都會自動滿足單調(diào)性要求。

該平臺使用帶有 int 和 long 原始類型的帶符號二進制補碼整數(shù)算術(shù)。開發(fā)人員應(yīng)選擇原始類型以確保算術(shù)運算始終產(chǎn)生正確的結(jié)果,這在某些情況下意味著運算不會溢出計算值的范圍。最佳實踐是選擇原始類型和算法以避免溢出。在大小為 int 或 long 且需要檢測溢出錯誤的情況下,方法 addExact、subtractExact、multiplyExact 和 toIntExact 在結(jié)果溢出時拋出 ArithmeticException。對于其他算術(shù)運算,例如除法、絕對值、遞增、遞減和求反,溢出僅發(fā)生在特定的最小值或最大值時,應(yīng)根據(jù)需要檢查最小值或最大值。

字段摘要

修飾符和類型 字段 描述
static doubleE比任何其他值更接近 e(自然對數(shù)的底)的雙精度值。
static doublePI比任何其他值更接近 pi 的雙精度值,即圓的周長與其直徑的比率。

方法總結(jié)

修飾符和類型 方法 描述
static doubleabs(double a)返回雙精度值的絕對值。
static floatabs(float a)返回浮點值的絕對值。
static intabs(int a)返回 int 值的絕對值。
static longabs(long a)返回一個 long 值的絕對值。
static doubleacos(double a)返回一個值的反余弦值; 返回的角度在 0.0 到 pi 的范圍內(nèi)。
static intaddExact(int x, int y)返回其參數(shù)的總和,如果結(jié)果溢出 int,則拋出異常。
static longaddExact(long x, long y)返回其參數(shù)的總和,如果結(jié)果溢出 long 則拋出異常。
static doubleasin(double a)返回一個值的反正弦; 返回的角度在 -pi/2 到 pi/2 的范圍內(nèi)。
static doubleatan(double a)返回值的反正切; 返回的角度在 -pi/2 到 pi/2 的范圍內(nèi)。
static doubleatan2(double y, double x)從直角坐標(biāo) (x, y) 到極坐標(biāo) (r, theta) 的轉(zhuǎn)換中返回角度 theta。
static doublecbrt(double a)返回雙精度值的立方根。
static doubleceil(double a)返回大于或等于參數(shù)且等于數(shù)學(xué)整數(shù)的最?。ㄗ罱咏摕o窮大)雙精度值。
static doublecopySign(double magnitude, double sign)返回帶有第二個浮點參數(shù)符號的第一個浮點參數(shù)。
static floatcopySign(float magnitude, float sign)返回帶有第二個浮點參數(shù)符號的第一個浮點參數(shù)。
static doublecos(double a)返回角度的三角余弦值。
static doublecosh(double x)返回 double 值的雙曲余弦值。
static intdecrementExact(int a)返回減一的參數(shù),如果結(jié)果溢出 int,則拋出異常。
static longdecrementExact(long a)返回減一的參數(shù),如果結(jié)果溢出 long 則拋出異常。
static doubleexp(double a)返回歐拉數(shù) e 的雙精度次方。
static doubleexpm1(double x)返回 ex -1。
static doublefloor(double a)返回小于或等于參數(shù)且等于數(shù)學(xué)整數(shù)的最大(最接近正無窮大)雙精度值。
static intfloorDiv(int x, int y)返回小于或等于代數(shù)商的最大(最接近正無窮大)int 值。
static longfloorDiv(long x, long y)返回小于或等于代數(shù)商的最大(最接近正無窮大)long 值。
static intfloorMod(int x, int y)返回 int 參數(shù)的底模。
static longfloorMod(long x, long y)返回長參數(shù)的底模。
static intgetExponent(double d)返回用于表示雙精度的無偏指數(shù)。
static intgetExponent(float f)返回浮點數(shù)表示中使用的無偏指數(shù)。
static doublehypot(double x, double y)返回 sqrt(x2 +y2) 沒有中間溢出或下溢。
static doubleIEEEremainder(double f1, double f2)計算 IEEE 754 標(biāo)準規(guī)定的兩個參數(shù)的余數(shù)運算。
static intincrementExact(int a)返回加一的參數(shù),如果結(jié)果溢出 int 則拋出異常。
static longincrementExact(long a)返回加一的參數(shù),如果結(jié)果溢出 long 則拋出異常。
static doublelog(double a)返回雙精度值的自然對數(shù)(底數(shù) e)。
static doublelog10(double a)返回雙精度值的以 10 為底的對數(shù)。
static doublelog1p(double x)返回參數(shù)和 1 之和的自然對數(shù)。
static doublemax(double a, double b)返回兩個雙精度值中的較大者。
static floatmax(float a, float b)返回兩個浮點值中的較大者。
static intmax(int a, int b)返回兩個 int 值中的較大者。
static longmax(long a, long b)返回兩個 long 值中的較大者。
static doublemin(double a, double b)返回兩個雙精度值中較小的一個。
static floatmin(float a, float b)返回兩個浮點值中較小的一個。
static intmin(int a, int b)返回兩個 int 值中較小的一個。
static longmin(long a, long b)返回兩個 long 值中較小的一個。
static intmultiplyExact(int x, int y)返回參數(shù)的乘積,如果結(jié)果溢出 int,則拋出異常。
static longmultiplyExact(long x, long y)返回參數(shù)的乘積,如果結(jié)果溢出 long 則拋出異常。
static intnegateExact(int a)返回參數(shù)的否定,如果結(jié)果溢出 int 則拋出異常。
static longnegateExact(long a)返回參數(shù)的否定,如果結(jié)果溢出 long 則拋出異常。
static doublenextAfter(double start, double direction)返回第二個參數(shù)方向上與第一個參數(shù)相鄰的浮點數(shù)。
static floatnextAfter(float start, double direction)返回第二個參數(shù)方向上與第一個參數(shù)相鄰的浮點數(shù)。
static doublenextDown(double d)返回在負無窮方向上與 d 相鄰的浮點值。
static floatnextDown(float f)返回在負無窮方向上與 f 相鄰的浮點值。
static doublenextUp(double d)返回正無窮方向上與 d 相鄰的浮點值。
static floatnextUp(float f)返回在正無窮大方向上與 f 相鄰的浮點值。
static doublepow(double a, double b)返回第一個參數(shù)的第二個參數(shù)次冪的值。
static doublerandom()返回一個帶正號的雙精度值,大于或等于 0.0 且小于 1.0。
static doublerint(double a)返回與參數(shù)值最接近且等于數(shù)學(xué)整數(shù)的雙精度值。
static longround(double a)返回最接近參數(shù)的長整數(shù),并舍入為正無窮大。
static intround(float a)返回最接近參數(shù)的 int,并舍入為正無窮大。
static doublescalb(double d, int scaleFactor)返回四舍五入的 d × 2scaleFactor,就像通過單個正確舍入的浮點乘以雙精度值集的成員一樣。
static floatscalb(float f, int scaleFactor)返回 f × 2scaleFactor 舍入,就好像通過單個正確舍入的浮點乘以浮點值集的成員一樣。
static doublesignum(double d)返回參數(shù)的符號函數(shù); 如果參數(shù)為零,則為零,如果參數(shù)大于零,則為 1.0,如果參數(shù)小于零,則為 -1.0。
static floatsignum(float f)返回參數(shù)的符號函數(shù); 如果參數(shù)為零,則為零,如果參數(shù)大于零,則為 1.0f,如果參數(shù)小于零,則為 -1.0f。
static doublesin(double a)返回角度的三角正弦值。
static doublesinh(double x)返回 double 值的雙曲正弦值。
static doublesqrt(double a)返回雙精度值的正確舍入正平方根。
static intsubtractExact(int x, int y)返回參數(shù)的差異,如果結(jié)果溢出 int,則拋出異常。
static longsubtractExact(long x, long y)返回參數(shù)的差異,如果結(jié)果溢出 long 則拋出異常。
static doubletan(double a)返回角度的三角正切。
static doubletanh(double x)返回 double 值的雙曲正切值。
static doubletoDegrees(double angrad)將以弧度測量的角度轉(zhuǎn)換為以度為單位測量的大致等效角度。
static inttoIntExact(long value)返回長參數(shù)的值; 如果值溢出 int,則拋出異常。
static doubletoRadians(double angdeg)將以度為單位的角度轉(zhuǎn)換為以弧度為單位的大致等效角度。
static doubleulp(double d)返回參數(shù)的 ulp 的大小。
static floatulp(float f)返回參數(shù)的 ulp 的大小。
從類 java.lang.Object 繼承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

字段詳細信息

E

public static final double E

比任何其他值更接近 e(自然對數(shù)的底)的雙精度值。

PI

public static final double PI

比任何其他值更接近 pi 的雙精度值,即圓的周長與其直徑的比率。

方法詳情

sin

public static double sin(double a)

返回角度的三角正弦值。 特別案例:

  • 如果參數(shù)為 NaN 或無窮大,則結(jié)果為 NaN。
  • 如果參數(shù)為零,則結(jié)果為零,符號與參數(shù)相同。

計算結(jié)果必須在精確結(jié)果的 1 ulp 范圍內(nèi)。 結(jié)果必須是半單調(diào)的。

參數(shù):

參數(shù)名稱 參數(shù)描述
a一個角度,以弧度為單位。

返回:

論證的正弦。

cos

public static double cos(double a)

返回角度的三角余弦值。 特別案例:

  • 如果參數(shù)為 NaN 或無窮大,則結(jié)果為 NaN。

計算結(jié)果必須在精確結(jié)果的 1 ulp 范圍內(nèi)。 結(jié)果必須是半單調(diào)的。

參數(shù):

參數(shù)名稱 參數(shù)描述
a一個角度,以弧度為單位。

返回:

參數(shù)的余弦。

tan

public static double tan(double a)

返回角度的三角正切。 特別案例:

  • 如果參數(shù)為 NaN 或無窮大,則結(jié)果為 NaN。
  • 如果參數(shù)為零,則結(jié)果為零,符號與參數(shù)相同。

計算結(jié)果必須在精確結(jié)果的 1 ulp 范圍內(nèi)。 結(jié)果必須是半單調(diào)的。

參數(shù):

參數(shù)名稱 參數(shù)描述
a一個角度,以弧度為單位。

返回:

論點的切線。

asin

public static double asin(double a)

返回一個值的反正弦; 返回的角度在 -pi/2 到 pi/2 的范圍內(nèi)。 特別案例:

  • 如果參數(shù)為 NaN 或其絕對值大于 1,則結(jié)果為 NaN。
  • 如果參數(shù)為零,則結(jié)果為零,符號與參數(shù)相同。

計算結(jié)果必須在精確結(jié)果的 1 ulp 范圍內(nèi)。 結(jié)果必須是半單調(diào)的。

參數(shù):

參數(shù)名稱 參數(shù)描述
a要返回其反正弦的值。

返回:

參數(shù)的反正弦。

acos

public static double acos(double a)

返回一個值的反余弦值; 返回的角度在 0.0 到 pi 的范圍內(nèi)。 特例:

  • 如果參數(shù)為 NaN 或其絕對值大于 1,則結(jié)果為 NaN。

計算結(jié)果必須在精確結(jié)果的 1 ulp 范圍內(nèi)。 結(jié)果必須是半單調(diào)的。

參數(shù):

參數(shù)名稱 參數(shù)描述
a要返回其反余弦值的值。

返回:

參數(shù)的反余弦。

atan

public static double atan(double a)

返回值的反正切; 返回的角度在 -pi/2 到 pi/2 的范圍內(nèi)。 特別案例:

  • 如果參數(shù)為 NaN,則結(jié)果為 NaN。
  • 如果參數(shù)為零,則結(jié)果為零,符號與參數(shù)相同。

計算結(jié)果必須在精確結(jié)果的 1 ulp 范圍內(nèi)。 結(jié)果必須是半單調(diào)的。

參數(shù):

參數(shù)名稱 參數(shù)描述
a要返回其反正切的值。

返回:

參數(shù)的反正切。

toRadians

public static double toRadians(double angdeg)

將以度為單位的角度轉(zhuǎn)換為以弧度為單位的大致等效角度。 從度數(shù)到弧度的轉(zhuǎn)換通常是不精確的。

參數(shù):

參數(shù)名稱 參數(shù)描述
angdeg一個角度,以度為單位

返回:

以弧度為單位的角度 angdeg 的測量值。

toDegrees

public static double toDegrees(double angrad)

將以弧度測量的角度轉(zhuǎn)換為以度為單位測量的大致等效角度。 從弧度到度數(shù)的轉(zhuǎn)換通常是不精確的; 用戶不應(yīng)該*期望 cos(toRadians(90.0)) 完全等于 0.0。

參數(shù):

參數(shù)名稱 參數(shù)描述
angrad一個角度,以弧度為單位

返回:

以度為單位的角度 angrad 的測量值。

exp

public static double exp(double a)

返回歐拉數(shù) e 的雙精度次方。 特別情況:

  • 如果參數(shù)為 NaN,則結(jié)果為 NaN。
  • 如果參數(shù)是正無窮大,那么結(jié)果是正無窮大。
  • 如果參數(shù)為負無窮大,則結(jié)果為正零。

計算結(jié)果必須在精確結(jié)果的 1 ulp 范圍內(nèi)。 結(jié)果必須是半單調(diào)的。

參數(shù):

參數(shù)名稱 參數(shù)描述
a將 e 提高到的指數(shù)。

返回:

ea,其中 e 是自然對數(shù)的底。

log

public static double log(double a)

返回雙精度值的自然對數(shù)(底數(shù) e)。 特別情況:

  • 如果參數(shù)為 NaN 或小于零,則結(jié)果為 NaN。
  • 如果參數(shù)是正無窮大,那么結(jié)果是正無窮大。
  • 如果參數(shù)為正零或負零,則結(jié)果為負無窮大。

計算結(jié)果必須在精確結(jié)果的 1 ulp 范圍內(nèi)。 結(jié)果必須是半單調(diào)的。

參數(shù):

參數(shù)名稱 參數(shù)描述
a一個值

返回:

a中的值,a的自然對數(shù)。

log10

public static double log10(double a)

返回雙精度值的以 10 為底的對數(shù)。 特別情況:

  • 如果參數(shù)為 NaN 或小于零,則結(jié)果為 NaN。
  • 如果參數(shù)是正無窮大,那么結(jié)果是正無窮大。
  • 如果參數(shù)為正零或負零,則結(jié)果為負無窮大。
  • 如果參數(shù)等于整數(shù) n 的 10n,則結(jié)果為 n。

計算結(jié)果必須在精確結(jié)果的 1 ulp 范圍內(nèi)。 結(jié)果必須是半單調(diào)的。

參數(shù):

參數(shù)名稱 參數(shù)描述
a一個值

返回:

a 的以 10 為底的對數(shù)。

sqrt

public static double sqrt(double a)

返回雙精度值的正確舍入正平方根。 特別情況:

  • 如果參數(shù)為 NaN 或小于零,則結(jié)果為 NaN。
  • 如果參數(shù)是正無窮大,那么結(jié)果是正無窮大。
  • 如果參數(shù)是正零或負零,則結(jié)果與參數(shù)相同。

否則,結(jié)果是最接近參數(shù)值的真正數(shù)學(xué)平方根的雙精度值。

參數(shù):

參數(shù)名稱 參數(shù)描述
a一個值

返回:

a 的正平方根。 如果參數(shù)為 NaN 或小于零,則結(jié)果為 NaN。

cbrt

public static double cbrt(double a)

返回雙精度值的立方根。 對于正有限 x,cbrt(-x) == -cbrt(x); 也就是說,負值的立方根是該值大小的立方根的負數(shù)。 特別情況:

  • 如果參數(shù)為 NaN,則結(jié)果為 NaN。
  • 如果參數(shù)是無限的,則結(jié)果是與參數(shù)相同符號的無窮大。
  • 如果參數(shù)為零,則結(jié)果為零,符號與參數(shù)相同。

計算結(jié)果必須在精確結(jié)果的 1 ulp 范圍內(nèi)。

參數(shù):

參數(shù)名稱 參數(shù)描述
a一個值

返回:

a的立方根。

IEEEremainder

public static double IEEEremainder(double f1, double f2)

計算 IEEE 754 標(biāo)準規(guī)定的兩個參數(shù)的余數(shù)運算。 余數(shù)值在數(shù)學(xué)上等于 f1 - f2 × n,其中 n 是最接近商 f1/f2 的精確數(shù)學(xué)值的數(shù)學(xué)整數(shù),如果兩個數(shù)學(xué)整數(shù)同樣接近 f1/f2,則 n 是偶數(shù)整數(shù)。 如果余數(shù)為零,則其符號與第一個參數(shù)的符號相同。 特別案例:

  • 如果任一參數(shù)為 NaN,或第一個參數(shù)為無窮大,或第二個參數(shù)為正零或負零,則結(jié)果為 NaN。
  • 如果第一個參數(shù)是有限的,而第二個參數(shù)是無限的,那么結(jié)果與第一個參數(shù)相同。

參數(shù):

參數(shù)名稱 參數(shù)描述
f1被除數(shù)。
f2除數(shù)。

返回:

f1 除以 f2 的余數(shù)。

ceil

public static double ceil(double a)

返回大于或等于參數(shù)且等于數(shù)學(xué)整數(shù)的最?。ㄗ罱咏摕o窮大)雙精度值。 特別案例:

  • 如果參數(shù)值已經(jīng)等于數(shù)學(xué)整數(shù),則結(jié)果與參數(shù)相同。
  • 如果參數(shù)是 NaN 或無窮大或正零或負零,則結(jié)果與參數(shù)相同。
  • 如果參數(shù)值小于零但大于 -1.0,則結(jié)果為負零。

請注意,Math.ceil(x) 的值正是 -Math.floor(-x) 的值。

參數(shù):

參數(shù)名稱 參數(shù)描述
a一個值

返回:

大于或等于參數(shù)且等于數(shù)學(xué)整數(shù)的最?。ㄗ罱咏摕o窮大)浮點值。

floor

public static double floor(double a)

返回小于或等于參數(shù)且等于數(shù)學(xué)整數(shù)的最大(最接近正無窮大)雙精度值。 特別情況:

  • 如果參數(shù)值已經(jīng)等于數(shù)學(xué)整數(shù),則結(jié)果與參數(shù)相同。
  • 如果參數(shù)是 NaN 或無窮大或正零或負零,則結(jié)果與參數(shù)相同。

參數(shù):

參數(shù)名稱 參數(shù)描述
a一個值

返回:

小于或等于參數(shù)且等于數(shù)學(xué)整數(shù)的最大(最接近正無窮大)浮點值。

rint

public static double rint(double a)

返回與參數(shù)值最接近且等于數(shù)學(xué)整數(shù)的雙精度值。 如果兩個作為數(shù)學(xué)整數(shù)的雙精度值同樣接近,則結(jié)果是偶數(shù)的整數(shù)值。 特別案例:

  • 如果參數(shù)值已經(jīng)等于數(shù)學(xué)整數(shù),則結(jié)果與參數(shù)相同。
  • 如果參數(shù)是 NaN 或無窮大或正零或負零,則結(jié)果與參數(shù)相同。

參數(shù):

參數(shù)名稱 參數(shù)描述
a一個double值。

返回:

最接近等于數(shù)學(xué)整數(shù)的 a 的浮點值。

atan2

public static double atan2(double y, double x)

從直角坐標(biāo) (x, y) 到極坐標(biāo) (r, theta) 的轉(zhuǎn)換中返回角度 theta。此方法通過計算 -pipi 范圍內(nèi)的 y/x 的反正切來計算相位 theta。特別案例:

  • 如果任一參數(shù)為 NaN,則結(jié)果為 NaN。
  • 如果第一個參數(shù)為正零且第二個參數(shù)為正,或者第一個參數(shù)為正且有限且第二個參數(shù)為正無窮,則結(jié)果為正零。
  • 如果第一個參數(shù)為負零,第二個參數(shù)為正,或者第一個參數(shù)為負且有限,而第二個參數(shù)為正無窮,則結(jié)果為負零。
  • 如果第一個參數(shù)為正零,第二個參數(shù)為負,或者第一個參數(shù)為正且有限,第二個參數(shù)為負無窮,則結(jié)果是最接近 pi 的雙精度值。
  • 如果第一個參數(shù)為負零且第二個參數(shù)為負,或者第一個參數(shù)為負且有限且第二個參數(shù)為負無窮,則結(jié)果是最接近 -pi 的雙精度值。
  • 如果第一個參數(shù)為正,第二個參數(shù)為正零或負零,或者第一個參數(shù)為正無窮大,第二個參數(shù)為有限,則結(jié)果是最接近 pi/2 的雙精度值。
  • 如果第一個參數(shù)是負數(shù),第二個參數(shù)是正零或負零,或者第一個參數(shù)是負無窮大,第二個參數(shù)是有限的,那么結(jié)果是最接近 -pi/2 的雙精度值。
  • 如果兩個參數(shù)都是正無窮大,那么結(jié)果是最接近 pi/4 的雙精度值。
  • 如果第一個參數(shù)是正無窮大,第二個參數(shù)是負無窮大,那么結(jié)果是最接近 3*pi/4 的雙精度值。
  • 如果第一個參數(shù)是負無窮大,第二個參數(shù)是正無窮大,則結(jié)果是最接近 -pi/4 的雙精度值。
  • 如果兩個參數(shù)都是負無窮大,則結(jié)果是最接近 -3*pi/4 的雙精度值。

計算結(jié)果必須在精確結(jié)果的 2 ulps 范圍內(nèi)。結(jié)果必須是半單調(diào)的。

參數(shù):

參數(shù)名稱 參數(shù)描述
y縱坐標(biāo)
x橫坐標(biāo)

返回:

極坐標(biāo)中點 (r, theta) 的 theta 分量,對應(yīng)于笛卡爾坐標(biāo)中的點 (x, y)。

pow

public static double pow(double a, double b)

返回第一個參數(shù)的第二個參數(shù)次冪的值。 特別情況:

  • 如果第二個參數(shù)是正零或負零,則結(jié)果為 1.0。
  • 如果第二個參數(shù)為 1.0,則結(jié)果與第一個參數(shù)相同。
  • 如果第二個參數(shù)是 NaN,那么結(jié)果是 NaN。
  • 如果第一個參數(shù)為 NaN,第二個參數(shù)為非零,則結(jié)果為 NaN。
  • 如果
    • 第一個參數(shù)的絕對值大于 1,第二個參數(shù)為正無窮大,或
    • 第一個參數(shù)的絕對值小于 1,第二個參數(shù)為負無窮大,那么結(jié)果是正無窮大。
  • 如果
    • 第一個參數(shù)的絕對值大于 1,第二個參數(shù)為負無窮大,或
    • 第一個參數(shù)的絕對值小于 1,第二個參數(shù)為正無窮大,那么結(jié)果是正零。
  • 如果第一個參數(shù)的絕對值等于 1,而第二個參數(shù)是無限的,則結(jié)果為 NaN。
  • 如果
    • 第一個參數(shù)為正零,第二個參數(shù)大于零,或
    • 第一個參數(shù)是正無窮大,第二個參數(shù)小于零,那么結(jié)果是正零。
  • 如果
    • 第一個參數(shù)為正零,第二個參數(shù)小于零,或
    • 第一個參數(shù)是正無窮大,第二個參數(shù)大于零,那么結(jié)果是正無窮大。
  • 如果
    • 第一個參數(shù)為負零,第二個參數(shù)大于零但不是有限奇數(shù),或
    • 第一個參數(shù)是負無窮大,第二個參數(shù)小于零但不是有限奇數(shù),那么結(jié)果是正零。
  • 如果
    • 第一個參數(shù)是負零,第二個參數(shù)是一個正有限奇整數(shù),或者
    • 第一個參數(shù)是負無窮大,第二個參數(shù)是一個負有限奇整數(shù),那么結(jié)果是負零。
  • 如果
    • 第一個參數(shù)為負零,第二個參數(shù)小于零但不是有限奇數(shù),或
    • 第一個參數(shù)是負無窮大,第二個參數(shù)大于零但不是有限奇數(shù),那么結(jié)果是正無窮大。
  • 如果
    • 第一個參數(shù)是負零,第二個參數(shù)是一個負有限奇整數(shù),或者
    • 第一個參數(shù)是負無窮大,第二個參數(shù)是一個正有限奇整數(shù),那么結(jié)果是負無窮大。
  • 如果第一個參數(shù)是有限的并且小于零
    • 如果第二個參數(shù)是有限偶整數(shù),則結(jié)果等于將第一個參數(shù)的絕對值提高到第二個參數(shù)的冪的結(jié)果
    • 如果第二個參數(shù)是有限奇整數(shù),則結(jié)果等于將第一個參數(shù)的絕對值提高到第二個參數(shù)的冪的結(jié)果的負數(shù)
    • 如果第二個參數(shù)是有限的而不是整數(shù),則結(jié)果為 NaN。
  • 如果兩個參數(shù)都是整數(shù),則結(jié)果完全等于將第一個參數(shù)提升到第二個參數(shù)的冪的數(shù)學(xué)結(jié)果,如果該結(jié)果實際上可以精確地表示為雙精度值。

(在前面的描述中,浮點值被認為是整數(shù)當(dāng)且僅當(dāng)它是有限的并且是方法 ceil 的不動點,或者等效地,方法層的不動點。一個值是一個不動點 當(dāng)且僅當(dāng)將方法應(yīng)用于值的結(jié)果等于該值時,才屬于單參數(shù)方法。)

計算結(jié)果必須在精確結(jié)果的 1 ulp 范圍內(nèi)。 結(jié)果必須是半單調(diào)的。

參數(shù):

參數(shù)名稱 參數(shù)描述
a底數(shù)
b指數(shù)

返回:

值 ab。

round

public static int round(float a)

返回最接近參數(shù)的 int,并舍入為正無窮大。

特別案例:

  • 如果參數(shù)為 NaN,則結(jié)果為 0。
  • 如果參數(shù)為負無窮大或任何小于或等于 Integer.MIN_VALUE 的值,則結(jié)果等于 Integer.MIN_VALUE 的值。
  • 如果參數(shù)為正無窮大或任何大于或等于 Integer.MAX_VALUE 的值,則結(jié)果等于 Integer.MAX_VALUE 的值。

參數(shù):

參數(shù)名稱 參數(shù)描述
a要舍入為整數(shù)的浮點值。

返回:

參數(shù)的值四舍五入到最接近的 int 值。

round

public static long round(double a)

返回最接近參數(shù)的長整數(shù),并舍入為正無窮大。

特別情況:

  • 如果參數(shù)為 NaN,則結(jié)果為 0。
  • 如果參數(shù)為負無窮大或任何小于或等于 Long.MIN_VALUE 的值,則結(jié)果等于 Long.MIN_VALUE 的值。
  • 如果參數(shù)為正無窮大或任何大于或等于 Long.MAX_VALUE 的值,則結(jié)果等于 Long.MAX_VALUE 的值。

參數(shù):

參數(shù)名稱 參數(shù)描述
a要舍入為 long 的浮點值。

返回:

參數(shù)的值四舍五入到最接近的 long 值。

random

public static double random()

返回一個帶正號的雙精度值,大于或等于 0.0 且小于 1.0。 返回值是偽隨機選擇的,從該范圍(近似)均勻分布。

當(dāng)這個方法第一次被調(diào)用時,它會創(chuàng)建一個新的偽隨機數(shù)生成器,就像通過表達式一樣

new java.util.Random()

這個新的偽隨機數(shù)生成器隨后用于對該方法的所有調(diào)用,并且不會在其他任何地方使用。

此方法已正確同步,以允許多個線程正確使用。 但是,如果許多線程需要以很高的速率生成偽隨機數(shù),則可能會減少每個線程對擁有自己的偽隨機數(shù)生成器的爭用。

返回:

大于或等于 0.0 且小于 1.0 的偽隨機 double。

addExact

public static int addExact(int x, int y)

返回其參數(shù)的總和,如果結(jié)果溢出 int,則拋出異常。

參數(shù):

參數(shù)名稱 參數(shù)描述
x第一個值
y第二個值

返回:

結(jié)果

Throws:

Throw名稱 Throw描述
ArithmeticException如果結(jié)果溢出一個 int

addExact

public static long addExact(long x, long y)

返回其參數(shù)的總和,如果結(jié)果溢出 long 則拋出異常。

參數(shù):

參數(shù)名稱 參數(shù)描述
x第一個值
y第二個值

返回:

結(jié)果

Throws:

Throw名稱 Throw描述
ArithmeticException如果結(jié)果溢出一個long

subtractExact

public static int subtractExact(int x, int y)

返回參數(shù)的差異,如果結(jié)果溢出 int,則拋出異常。

參數(shù):

參數(shù)名稱 參數(shù)描述
x第一個值
y從第一個值中減去的第二個值

返回:

結(jié)果

Throws:

Throw名稱 Throw描述
ArithmeticException如果結(jié)果溢出一個 int

subtractExact

public static long subtractExact(long x, long y)

返回參數(shù)的差異,如果結(jié)果溢出 long 則拋出異常。

參數(shù):

參數(shù)名稱 參數(shù)描述
x第一個值
y從第一個值中減去的第二個值

返回:

結(jié)果

Throws:

Throw名稱 Throw描述
ArithmeticException如果結(jié)果溢出一個long

multiplyExact

public static int multiplyExact(int x, int y)

返回參數(shù)的乘積,如果結(jié)果溢出 int,則拋出異常。

參數(shù):

參數(shù)名稱 參數(shù)描述
x第一個值
y第二個值

返回:

結(jié)果

Throws:

Throw名稱 Throw描述
ArithmeticException如果結(jié)果溢出一個 int

multiplyExact

public static long multiplyExact(long x, long y)

返回參數(shù)的乘積,如果結(jié)果溢出 long 則拋出異常。

參數(shù):

參數(shù)名稱 參數(shù)描述
x第一個值
y第二個值

返回:

結(jié)果

Throws:

Throw名稱 Throw描述
ArithmeticException如果結(jié)果溢出一個long

incrementExact

public static int incrementExact(int a)

返回加一的參數(shù),如果結(jié)果溢出 int 則拋出異常。

參數(shù):

參數(shù)名稱 參數(shù)描述
a要增加的值

返回:

結(jié)果

Throws:

Throw名稱 Throw描述
ArithmeticException如果結(jié)果溢出一個 int

incrementExact

public static long incrementExact(long a)

返回加一的參數(shù),如果結(jié)果溢出 long 則拋出異常。

參數(shù):

參數(shù)名稱 參數(shù)描述
a要增加的值

返回:

結(jié)果

Throws:

Throw名稱 Throw描述
ArithmeticException如果結(jié)果溢出一個long

decrementExact

public static int decrementExact(int a)

返回減一的參數(shù),如果結(jié)果溢出 int,則拋出異常。

參數(shù):

參數(shù)名稱 參數(shù)描述
a要減少的值

返回:

結(jié)果

Throws:

Throw名稱 Throw描述
ArithmeticExceptionif the result overflows an int

decrementExact

public static long decrementExact(long a)

返回減一的參數(shù),如果結(jié)果溢出 long 則拋出異常。

參數(shù):

參數(shù)名稱 參數(shù)描述
a要減少的值

返回:

結(jié)果

Throws:

Throw名稱 Throw描述
ArithmeticException如果結(jié)果溢出一個long

negateExact

public static int negateExact(int a)

返回參數(shù)的否定,如果結(jié)果溢出 int 則拋出異常。

參數(shù):

參數(shù)名稱 參數(shù)描述
a要否定的值

返回:

j結(jié)果

Throws:

Throw名稱 Throw描述
ArithmeticException如果結(jié)果溢出一個 int

negateExact

public static long negateExact(long a)

返回參數(shù)的否定,如果結(jié)果溢出 long 則拋出異常。

參數(shù):

參數(shù)名稱 參數(shù)描述
a要否定的值

返回:

結(jié)果

Throws:

Throw名稱 Throw描述
ArithmeticException如果結(jié)果溢出一個long

toIntExact

public static int toIntExact(long value)

返回long參數(shù)的值; 如果值溢出 int,則拋出異常。

參數(shù):

參數(shù)名稱 參數(shù)描述
value一個long值

返回:

作為 int 的參數(shù)

Throws:

Throw名稱 Throw描述
ArithmeticException如果參數(shù)溢出一個 int

floorDiv

public static int floorDiv(int x, int y)

返回小于或等于代數(shù)商的最大(最接近正無窮大)int 值。 有一種特殊情況,如果被除數(shù)是 Integer#MIN_VALUE 而除數(shù)是 -1,則發(fā)生整數(shù)溢出,結(jié)果等于 Integer.MIN_VALUE。

正常整數(shù)除法在舍入到零舍入模式(截斷)下運行。 此操作改為在朝負無窮大(下限)舍入模式下進行。 當(dāng)精確結(jié)果為負時,下舍入模式給出的結(jié)果與截斷不同。

  • 如果參數(shù)的符號相同,則 floorDiv 和 / 運算符的結(jié)果相同。 例如, floorDiv(4, 3) == 1 和 (4 / 3) == 1。
  • 如果參數(shù)的符號不同,則商為負,floorDiv 返回小于或等于商的整數(shù),/ 運算符返回最接近零的整數(shù)。 例如, floorDiv(-4, 3) == -2,而 (-4 / 3) == -1。

參數(shù):

參數(shù)名稱 參數(shù)描述
x被除數(shù)
y除數(shù)

返回:

小于或等于代數(shù)商的最大(最接近正無窮大)int 值。

Throws:

Throw名稱 Throw描述
ArithmeticException如果除數(shù) y 為零

floorDiv

public static long floorDiv(long x, long y)

返回小于或等于代數(shù)商的最大(最接近正無窮大)long 值。 有一種特殊情況,如果被除數(shù)是 Long#MIN_VALUE 而除數(shù)是 -1,則發(fā)生整數(shù)溢出,結(jié)果等于 Long.MIN_VALUE。

正常整數(shù)除法在舍入到零舍入模式(截斷)下運行。 此操作改為在朝負無窮大(下限)舍入模式下進行。 當(dāng)精確結(jié)果為負時,下舍入模式給出的結(jié)果與截斷不同。

參數(shù):

參數(shù)名稱 參數(shù)描述
x被除數(shù)
y除數(shù)

返回:

小于或等于代數(shù)商的最大(最接近正無窮大)long 值。

Throws:

Throw名稱 Throw描述
ArithmeticException如果除數(shù) y 為零

floorMod

public static int floorMod(int x, int y)

返回 int 參數(shù)的底模。

底模為 x - (floorDiv(x, y) * y),與除數(shù) y 具有相同的符號,并且在 -abs(y) < r < +abs(y) 的范圍內(nèi)。

floorDiv 和 floorMod 之間的關(guān)系是這樣的:

  • floorDiv(x, y) * y + floorMod(x, y) == x

floorMod 和 % 運算符之間的值差異是由于 floorDiv 返回小于或等于商的整數(shù)與返回最接近零的整數(shù)的 / 運算符之間的差異。

例如:

  • 如果參數(shù)的符號相同,則 floorMod 和 % 運算符的結(jié)果相同。
    • floorMod(4, 3) == 1; and (4 % 3) == 1
  • 如果參數(shù)的符號不同,則結(jié)果與 % 運算符不同。
    • floorMod(+4, -3) == -2; and (+4 % -3) == +1
    • floorMod(-4, +3) == +2; and (-4 % +3) == -1
    • floorMod(-4, -3) == -1; and (-4 % -3) == -1

如果參數(shù)的符號未知并且需要正模數(shù),則可以將其計算為 (floorMod(x, y) + abs(y)) % abs(y)。

參數(shù):

參數(shù)名稱 參數(shù)描述
x被除數(shù)
y除數(shù)

返回:

底模 x - (floorDiv(x, y) * y)

Throws:

Throw名稱 Throw描述
ArithmeticException如果除數(shù) y 為零

floorMod

public static long floorMod(long x, long y)

返回long參數(shù)的底模。

底模為 x - (floorDiv(x, y) * y),與除數(shù) y 具有相同的符號,并且在 -abs(y) < r < +abs(y) 的范圍內(nèi)。

floorDiv 和 floorMod 之間的關(guān)系是這樣的:

  • floorDiv(x, y) * y + floorMod(x, y) == x

參數(shù):

參數(shù)名稱 參數(shù)描述
x被除數(shù)
y除數(shù)

返回:

底模 x - (floorDiv(x, y) * y)

Throws:

Throw名稱 Throw描述
ArithmeticException如果除數(shù) y 為零

abs

public static int abs(int a)

返回 int 值的絕對值。 如果參數(shù)不是負數(shù),則返回參數(shù)。 如果參數(shù)是否定的,則返回參數(shù)的否定。

請注意,如果參數(shù)等于 Integer#MIN_VALUE 的值,即最負的可表示 int 值,則結(jié)果是相同的值,即為負。

參數(shù):

參數(shù)名稱 參數(shù)描述
a要確定其絕對值的參數(shù)

返回:

參數(shù)的絕對值。

abs

public static long abs(long a)

返回一個 long 值的絕對值。 如果參數(shù)不是負數(shù),則返回參數(shù)。 如果參數(shù)是否定的,則返回參數(shù)的否定。

請注意,如果參數(shù)等于 Long#MIN_VALUE 的值(可表示的最負的 long 值),則結(jié)果是相同的值,即為負。

參數(shù):

參數(shù)名稱 參數(shù)描述
a要確定其絕對值的參數(shù)

返回:

參數(shù)的絕對值。

abs

public static float abs(float a)

返回浮點值的絕對值。 如果參數(shù)不是負數(shù),則返回參數(shù)。 如果參數(shù)是否定的,則返回參數(shù)的否定。 特別案例:

  • 如果參數(shù)為正零或負零,則結(jié)果為正零。
  • 如果參數(shù)是無限的,則結(jié)果是正無窮大。
  • 如果參數(shù)為 NaN,則結(jié)果為 NaN。

換句話說,結(jié)果與表達式的值相同:

Float.intBitsToFloat(0x7fffffff & Float.floatToIntBits(a))

參數(shù):

參數(shù)名稱 參數(shù)描述
a要確定其絕對值的參數(shù)

返回:

參數(shù)的絕對值。

abs

public static double abs(double a)

返回雙精度值的絕對值。 如果參數(shù)不是負數(shù),則返回參數(shù)。 如果參數(shù)是否定的,則返回參數(shù)的否定。 特別案例:

  • 如果參數(shù)為正零或負零,則結(jié)果為正零。
  • 如果參數(shù)是無限的,則結(jié)果是正無窮大。
  • 如果參數(shù)為 NaN,則結(jié)果為 NaN。

換句話說,結(jié)果與表達式的值相同:

Double.longBitsToDouble((Double.doubleToLongBits(a)<<1)>>>1)

參數(shù):

參數(shù)名稱 參數(shù)描述
a要確定其絕對值的參數(shù)

返回:

參數(shù)的絕對值。

max

public static int max(int a, int b)

返回兩個 int 值中的較大者。 也就是說,結(jié)果是更接近 Integer#MAX_VALUE 值的參數(shù)。 如果參數(shù)具有相同的值,則結(jié)果是相同的值。

參數(shù):

參數(shù)名稱 參數(shù)描述
a一個論點。
b另一個論點。

返回:

a 和 b 中的較大者。

max

public static long max(long a, long b)

返回兩個 long 值中的較大者。 也就是說,結(jié)果是參數(shù)更接近 Long#MAX_VALUE 的值。 如果參數(shù)具有相同的值,則結(jié)果是相同的值。

參數(shù):

參數(shù)名稱 參數(shù)描述
a一個論點
b另一個論點

返回:

a 和 b 中的較大者。

max

public static float max(float a, float b)

返回兩個浮點值中的較大者。 也就是說,結(jié)果是更接近正無窮大的參數(shù)。 如果參數(shù)具有相同的值,則結(jié)果是相同的值。 如果任一值為 NaN,則結(jié)果為 NaN。 與數(shù)值比較運算符不同,此方法認為負零嚴格小于正零。 如果一個參數(shù)為正零而另一個為負零,則結(jié)果為正零。

參數(shù):

參數(shù)名稱 參數(shù)描述
a一個論點
b另一個論點

返回:

a 和 b 中的較大者。

max

public static double max(double a, double b)

返回兩個雙精度值中的較大者。 也就是說,結(jié)果是更接近正無窮大的參數(shù)。 如果參數(shù)具有相同的值,則結(jié)果是相同的值。 如果任一值為 NaN,則結(jié)果為 NaN。 與數(shù)值比較運算符不同,此方法認為負零嚴格小于正零。 如果一個參數(shù)為正零而另一個為負零,則結(jié)果為正零。

參數(shù):

參數(shù)名稱 參數(shù)描述
a一個論點。
b另一個論點。

返回:

a 和 b 中的較大者。

min

public static int min(int a, int b)

返回兩個 int 值中較小的一個。 也就是說,參數(shù)的結(jié)果更接近 Integer#MIN_VALUE 的值。 如果參數(shù)具有相同的值,則結(jié)果是相同的值。

參數(shù):

參數(shù)名稱 參數(shù)描述
a一個論點
b另一個論點

返回:

a 和 b 中較小的一個。

min

public static long min(long a, long b)

返回兩個 long 值中較小的一個。 也就是說,結(jié)果是參數(shù)更接近 Long#MIN_VALUE 的值。 如果參數(shù)具有相同的值,則結(jié)果是相同的值。

參數(shù):

參數(shù)名稱 參數(shù)描述
a一個論點
b另一個論點

返回:

a 和 b 中較小的一個。

min

public static float min(float a, float b)

返回兩個浮點值中較小的一個。 也就是說,結(jié)果是更接近負無窮大的值。 如果參數(shù)具有相同的值,則結(jié)果是相同的值。 如果任一值為 NaN,則結(jié)果為 NaN。 與數(shù)值比較運算符不同,此方法認為負零嚴格小于正零。 如果一個參數(shù)為正零而另一個為負零,則結(jié)果為負零。

參數(shù):

參數(shù)名稱 參數(shù)描述
a一個論點
b另一個論點

返回:

a 和 b 中較小的一個。

min

public static double min(double a, double b)

返回兩個雙精度值中較小的一個。 也就是說,結(jié)果是更接近負無窮大的值。 如果參數(shù)具有相同的值,則結(jié)果是相同的值。 如果任一值為 NaN,則結(jié)果為 NaN。 與數(shù)值比較運算符不同,此方法認為負零嚴格小于正零。 如果一個參數(shù)為正零而另一個為負零,則結(jié)果為負零。

參數(shù):

參數(shù)名稱 參數(shù)描述
a一個論點
b另一個論點

返回:

a 和 b 中較小的一個。

ulp

public static double ulp(double d)

返回參數(shù)的 ulp 的大小。 double 值的最后一個單位 ulp 是該浮點值與幅度下一個更大的 double 值之間的正距離。 請注意,對于非 NaN x,ulp(-x) == ulp(x)
網(wǎng)站題目:創(chuàng)新互聯(lián)鴻蒙OS教程:鴻蒙OSMath
瀏覽路徑:http://uogjgqi.cn/article/djspgee.html

掃二維碼與項目經(jīng)理溝通

我們在微信上24小時期待你的聲音

解答本文疑問/技術(shù)咨詢/運營咨詢/技術(shù)建議/互聯(lián)網(wǎng)交流