|
JavaTM Platform Standard Ed. 6 |
|||||||||
앞의 클래스 다음의 클래스 | 프레임 있어 프레임 없음 | |||||||||
개요: 상자 | 필드 | 생성자 | 메소드 | 상세 : 필드 | 생성자 | 메소드 |
java.lang.Objectjava.lang.Math
public final class Math
Math
클래스는, 지수함수, 대수관계, 평방근, 및 삼각함수라고 하는 기본적인 수치 처리를 실행하기 위한 메소드를 포함하고 있습니다.
StrictMath
클래스의 일부의 수치 메소드와는 달라,Math
클래스의 등가 함수의 모든 구현은, 비트대 비트의 같은 결과를 돌려주도록(듯이)는 정의되고 있지 않습니다. 이 완만함에 의해, 엄밀한 재현성이 요구되지 않는 구현에 대해 퍼포먼스의 향상이 가능하게 됩니다.
많은 Math
메소드는 디폴트로,StrictMath
의 등가 메소드에 그러한 구현을 사용하기 위해서 단지 호출합니다. 코드 제네레이터는, 플랫폼 고유의 네이티브 라이브러리 또는 마이크로 프로세서의 명령이 있는 경우는 적극적으로 사용해, 고성능인 Math
메소드의 구현을 제공합니다. 그러한 고성능인 구현에서도 Math
의 스펙에 준거할 필요가 있습니다.
구현 스펙의 품질은, 2 개의 프로퍼티, 반환되는 결과의 정확함, 및 메소드의 단조성과 관계가 있습니다. 부동 소수점 Math
메소드의 정확함은,ulp (최신 위치의 단위)로 계측 됩니다. 부동 소수점 형식이 지정되었을 경우, 특정의 실수치의 ulp 는 그 수치를 둘러싸고 있는 2 개의 부동 소수점치의 거리가 됩니다. 메소드의 정확성을, 특정의 인수에 관해서는 아니고 전체적으로 논하는 경우에 나타나는 ulp 수는, 모든 인수에 있어서의 최대 오차가 됩니다. 메소드가 돌려주는 에러가 항상 0.5 ulp 미만의 경우, 그 메소드는 실제의 결과에 가장 가까운 부동 소수점수(실수)를 항상 돌려줍니다. 이런 종류의 메소드는 「올바르게 말 수 있다」라고 있습니다. 일반적으로은, 올바르게 말 수 있었던 메소드를 사용하는 것이 부동 소수점 근사치를 얻는 최선의 방법입니다만, 다수의 부동 소수점 메소드를 올바르게 마는 것은, 실제적이지는 않습니다. 그 대신에 Math
클래스의 경우, 1 또는 2 ulp 보다 큰 에러가 특정의 메소드로 허가됩니다. 비공식에는 1 ulp 의 에러에서는, 정확한 결과가 표현 가능한 수치의 경우에 정확한 결과가 돌려주어집니다. 그렇지 않은 경우, 정확한 결과를 둘러싸는 2 개의 부동 소수점치중 한쪽이 돌려주어질 가능성이 있습니다. 정확한 결과의 절대치가 큰 경우, 괄호의 한편의 단 점이 무한한 가능성이 있습니다. 개별의 인수의 정확함에 가세해 메소드가 다른 인수간의 적절한 관계도 중요합니다. 이 때문에, 0.5 ulp 보다 큰 에러를 보관 유지하는 메소드는, 「반단조」인 것이 요구됩니다. 수학 함수가 비증가인 경우는 항상, 부동 소수점 근사치도 비증가가 됩니다. 1 ulp 의 정확성을 보관 유지하는 근사치 모든 것이, 자동적으로 단조 요건을 채우는 것은 아닙니다.
필드의 개요 | |
---|---|
static double |
E
자연대수의 바닥 e 에 가장 가까운 double 치입니다. |
static double |
PI
원주와 그 직경의 비 pi 에 가장 가까운 double 치입니다. |
메소드의 개요 | |
---|---|
static double |
abs (double a)
double 치의 절대치를 돌려줍니다. |
static float |
abs (float a)
float 치의 절대치를 돌려줍니다. |
static int |
abs (int a)
int 치의 절대치를 돌려줍니다. |
static long |
abs (long a)
long 치의 절대치를 돌려줍니다. |
static double |
acos (double a)
지정된 값의 역여현 (아크 코사인)을 돌려줍니다. |
static double |
asin (double a)
지정된 값의 역정현 (아크 싸인)을 돌려줍니다. |
static double |
atan (double a)
지정된 값의 역탄젠트 (arctangent)를 돌려줍니다. |
static double |
atan2 (double y,
double x)
극좌표 (r, theta)에의 구형 좌표 ( x , y )의 변환으로부터 각도 theta 를 돌려줍니다. |
static double |
cbrt (double a)
double 치의 입방근을 돌려줍니다. |
static double |
ceil (double a)
인수의 값이상으로, 계산상의 정수로 동일한, 최소의 (부의 무한대에 가장 가깝다) double 치를 돌려줍니다. |
static double |
copySign (double magnitude,
double sign)
2 번째의 부동 소수점 인수의 부호를 붙인, 최초의 부동 소수점 인수를 돌려줍니다. |
static float |
copySign (float magnitude,
float sign)
2 번째의 부동 소수점 인수의 부호를 붙인, 최초의 부동 소수점 인수를 돌려줍니다. |
static double |
cos (double a)
지정된 각도의 여현 (코사인)을 돌려줍니다. |
static double |
cosh (double x)
double 치의 쌍곡선 여현을 돌려줍니다. |
static double |
exp (double a)
나-수 e 를 double 치로 누승한 값을 돌려줍니다. |
static double |
expm1 (double x)
ex -1 를 돌려줍니다. |
static double |
floor (double a)
인수의 값이하로, 계산상의 정수로 동일한, 최대의 (정의 무한대에 가장 가깝다) double 치를 돌려줍니다. |
static int |
getExponent (double d)
double 의 표현으로 사용되는 불편 지수를 돌려줍니다. |
static int |
getExponent (float f)
float 의 표현으로 사용되는 불편 지수를 돌려줍니다. |
static double |
hypot (double x,
double y)
중간의 오버플로우나 언더 플로우(underflow)없이 sqrt(x2 +y2)가 돌려주어집니다. |
static double |
IEEEremainder (double f1,
double f2)
IEEE 754 표준에 따라, 2 개의 인수에 대해 잉여를 계산합니다. |
static double |
log (double a)
지정된 double 치의 자연대수치 (바닥은 e)를 돌려줍니다. |
static double |
log10 (double a)
double 치의 10 을 바닥으로 하는 대수를 돌려줍니다. |
static double |
log1p (double x)
인수와 1 의 합계의 자연대수를 돌려줍니다. |
static double |
max (double a,
double b)
2 개의 double 치의 쳐 큰 편을 돌려줍니다. |
static float |
max (float a,
float b)
2 개의 float 치의 쳐 큰 편을 돌려줍니다. |
static int |
max (int a,
int b)
2 개의 int 치의 쳐 큰 편을 돌려줍니다. |
static long |
max (long a,
long b)
2 개의 long 치의 쳐 큰 편을 돌려줍니다. |
static double |
min (double a,
double b)
2 개의 double 치의 쳐 작은 편을 돌려줍니다. |
static float |
min (float a,
float b)
2 개의 float 치의 쳐 작은 편을 돌려줍니다. |
static int |
min (int a,
int b)
2 개의 int 치의 쳐 작은 편을 돌려줍니다. |
static long |
min (long a,
long b)
2 개의 long 치의 쳐 작은 편을 돌려줍니다. |
static double |
nextAfter (double start,
double direction)
2 번째의 인수의 방향으로, 최초의 인수에 인접하는 부동 소수점치를 돌려줍니다. |
static float |
nextAfter (float start,
double direction)
2 번째의 인수의 방향으로, 최초의 인수에 인접하는 부동 소수점치를 돌려줍니다. |
static double |
nextUp (double d)
정의 무한대 방향으로 d 에 인접하는 부동 소수점치를 돌려줍니다. |
static float |
nextUp (float f)
정의 무한대 방향으로 f 에 인접하는 부동 소수점치를 돌려줍니다. |
static double |
pow (double a,
double b)
1 번째의 인수를, 2 번째의 인수로 누승한 값을 돌려줍니다. |
static double |
random ()
0.0 이상으로,1.0 보다 작은 정의 부호가 붙은 double 치를 돌려줍니다. |
static double |
rint (double a)
인수의 값에 가장 근처, 계산상의 정수에 동일한 double 치를 돌려줍니다. |
static long |
round (double a)
인수에 가장 가까운 long 를 돌려줍니다. |
static int |
round (float a)
인수에 가장 가까운 int 를 돌려줍니다. |
static double |
scalb (double d,
int scaleFactor)
double 치 세트의 멤버에게 단일의 올바르게 말 수 있었던 부동 소수점을 거는 것에 의해 실행되는 경우와 같게, d × 2scaleFactor 를 돌려줍니다. |
static float |
scalb (float f,
int scaleFactor)
float 치 세트의 멤버에게 단일의 올바르게 말 수 있었던 부동 소수점을 거는 것에 의해 실행되는 경우와 같게, d × 2scaleFactor 를 돌려줍니다. |
static double |
signum (double d)
인수의 부호 요소를 돌려줍니다. |
static float |
signum (float f)
인수의 부호 요소를 돌려줍니다. |
static double |
sin (double a)
지정된 각도의 정현 (싸인)을 돌려줍니다. |
static double |
sinh (double x)
double 치의 쌍곡선 정현을 돌려줍니다. |
static double |
sqrt (double a)
double 치의 올바르게 만 정의 평방근을 돌려줍니다. |
static double |
tan (double a)
지정된 각도의 탄젠트 (탄젠트)를 돌려줍니다. |
static double |
tanh (double x)
double 치의 쌍곡선 탄젠트를 돌려줍니다. |
static double |
toDegrees (double angrad)
라디안으로 계측 한 각도를, 상당할 때로 변환합니다. |
static double |
toRadians (double angdeg)
번으로 계측 한 각도를, 상당하는 라디안으로 변환합니다. |
static double |
ulp (double d)
인수의 ulp 의 사이즈를 돌려줍니다. |
static float |
ulp (float f)
인수의 ulp 의 사이즈를 돌려줍니다. |
클래스 java.lang. Object 로부터 상속된 메소드 |
---|
clone , equals , finalize , getClass , hashCode , notify , notifyAll , toString , wait , wait , wait |
필드의 상세 |
---|
public static final double E
e
에 가장 가까운 double 치입니다.
public static final double PI
double
치입니다.
메소드의 상세 |
---|
public static double sin(double a)
계산 결과는, 정확한 결과의 1 ulp 이내가 아니면 안됩니다. 결과는 반 단조로운 것에 한정합니다.
a
- 라디안으로 나타낸 각도
public static double cos(double a)
계산 결과는, 정확한 결과의 1 ulp 이내가 아니면 안됩니다. 결과는 반 단조로운 것에 한정합니다.
a
- 라디안으로 나타낸 각도
public static double tan(double a)
계산 결과는, 정확한 결과의 1 ulp 이내가 아니면 안됩니다. 결과는 반 단조로운 것에 한정합니다.
a
- 라디안으로 나타낸 각도
public static double asin(double a)
계산 결과는, 정확한 결과의 1 ulp 이내가 아니면 안됩니다. 결과는 반 단조로운 것에 한정합니다.
a
- 이 값의 역정현 (아크 싸인)이 반환된다
public static double acos(double a)
계산 결과는, 정확한 결과의 1 ulp 이내가 아니면 안됩니다. 결과는 반 단조로운 것에 한정합니다.
a
- 이 값의 역여현 (아크 코사인)이 반환된다
public static double atan(double a)
계산 결과는, 정확한 결과의 1 ulp 이내가 아니면 안됩니다. 결과는 반 단조로운 것에 한정합니다.
a
- 이 값의 역탄젠트 (arctangent)가 반환된다
public static double toRadians(double angdeg)
angdeg
- 도로 계측 한 각도
angdeg
의 계측치public static double toDegrees(double angrad)
cos(toRadians(90.0))
가 정확하게 0.0
에 대응하는 것을 기대할 수 없습니다.
angrad
- 라디안으로 나타낸 각도
angrad
의 계측치public static double exp(double a)
double
치로 누승한 값을 돌려줍니다. 특례로서:
계산 결과는, 정확한 결과의 1 ulp 이내가 아니면 안됩니다. 결과는 반 단조로운 것에 한정합니다.
a
- e 로 설정한 지수
a
의 값
e 는 자연대수의 바닥public static double log(double a)
double
치의 자연대수치 (바닥은 e)를 돌려줍니다. 특례로서:
계산 결과는, 정확한 결과의 1 ulp 이내가 아니면 안됩니다. 결과는 반 단조로운 것에 한정합니다.
a
- 치
a
의 값. a
의 자연대수public static double log10(double a)
double
치의 10 을 바닥으로 하는 대수를 돌려줍니다. 특례로서:
계산 결과는, 정확한 결과의 1 ulp 이내가 아니면 안됩니다. 결과는 반 단조로운 것에 한정합니다.
a
- 치
a
의 10 을 바닥으로 하는 대수public static double sqrt(double a)
double
치의 올바르게 만 정의 평방근을 돌려줍니다. 특례로서:
double
치가 돌려주어집니다.
a
- 치
a
정의 평방근
인수가 NaN 일까 제로보다 작은 경우는, 결과도 NaNpublic static double cbrt(double a)
double
치의 입방근을 돌려줍니다. 정의 유한치 x
의 경우,cbrt(-x) == -cbrt(x)
. 즉, 0 보다 작은 값의 입방근은, 값의 절대치의 입방근을 부로 한 것입니다.
특례로서:
계산 결과는, 정확한 결과의 1 ulp 이내가 아니면 안됩니다.
a
- 치
a
의 입방근public static double IEEEremainder(double f1, double f2)
f1 - f2
× n 에 동일해집니다. 여기서,n 는 f1/f2
의 상의 정확한 값에 가장 가까운 정수입니다. f1/f2
에 같은 정도로 근사 하는 정수가 2 개 존재하는 경우,n 에는 짝수가 선택됩니다. 잉여가 제로가 되는 경우, 그 부호는 1 번째의 인수의 부호와 같게 됩니다. 특례로서:
f1
- 피제수f2
- 제수
f1
를 f2
로 제산했을 때의 잉여public static double ceil(double a)
double
치를 돌려줍니다. 특례로서:
Math.ceil(x)
의 값은 -Math.floor(-x)
와 완전히 같은 점에 주의해 주세요.
a
- 치
public static double floor(double a)
double
치를 돌려줍니다. 특례로서:
a
- 치
public static double rint(double a)
double
치를 돌려줍니다. 2 개의 double
치의 정수가 같은 정도로 근사 하고 있는 경우, 결과는 짝수의 정수치가 됩니다. 특례로서:
a
- double
치
a
에 가장 가까운 부동 소수점치public static double atan2(double y, double x)
x
, y
)의 변환으로부터 각도 theta 를 돌려줍니다. 이 메소드는,y/x
의 역탄젠트 (arctangent)를 -pi ~ pi 의 범위에서 계산해, 위상 theta (시타)를 요구합니다. 특례로서:
double
치가 됩니다.
double
치가 됩니다.
double
치가 됩니다.
double
치가 됩니다.
double
치가 됩니다.
double
치가 됩니다.
double
치가 됩니다.
double
치가 됩니다. 계산 결과는, 정확한 결과의 2 ulp 이내가 아니면 안됩니다. 결과는 반 단조로운 것에 한정합니다.
y
- 종좌표x
- 횡좌표
public static double pow(double a, double b)
double
치로서 정확하게 나타내지는 경우는 1 번째의 인수를 2 번째의 인수로 누승한 계산치와 완전히 같은 결과가 된다(상기의 설명에 대해서는,ceil
메소드에 의한 고정 소수점, 또는 같은 것입니다만,floor
메소드에 의한 고정 소수점의 경우에 한정해, 부동 소수점치는 정수로서 생각합니다. 그 메소드를 적용한 결과와 같은 경우에 한정해, 값은 인수가 1 개의 메소드의 고정 소수점이 됩니다.
계산 결과는, 정확한 결과의 1 ulp 이내가 아니면 안됩니다. 결과는 반 단조로운 것에 한정합니다.
a
- 베이스b
- 지수
ab
치public static int round(float a)
int
를 돌려줍니다. 결과는 1/2 을 더해 floor 메소드로 취해 int
에 캐스트 해 정수에 말 수 있습니다. 즉, 다음의 식의 값에 동일해집니다. (int) Math.floor(a + 0.5f)
특례로서:
Integer.MIN_VALUE
이하의 임의의 값인 경우, 결과는 Integer.MIN_VALUE
의 값에 동일해집니다.
Integer.MAX_VALUE
이상의 임의의 값인 경우, 결과는 Integer.MAX_VALUE
의 값에 동일해집니다.
a
- 정수에 마는 부동 소수점치
int
치에 만 값Integer.MAX_VALUE
,
Integer.MIN_VALUE
public static long round(double a)
long
를 돌려줍니다. 결과는 1/2 을 더해 floor 메소드로 취해 int
에 캐스트 해 정수에 말 수 있습니다. 즉, 다음의 식의 값에 동일해집니다. (long) Math.floor(a + 0.5d)
특례로서:
Long.MIN_VALUE
이하의 임의의 값인 경우, 결과는 Long.MIN_VALUE
의 값에 동일해집니다.
Long.MAX_VALUE
이상의 임의의 값인 경우, 결과는 Long.MAX_VALUE
의 값에 동일해집니다.
a
- long
에 마는 부동 소수점치
long
치에 만 값Long.MAX_VALUE
,
Long.MIN_VALUE
public static double random()
0.0
이상으로,1.0
보다 작은 정의 부호가 붙은 double
치를 돌려줍니다. 반환값은, 이 범위로부터의 일님 분포에 의해 의사 난수적으로 선택됩니다.
최초로 이 메소드가 불려 갔을 때에, 메소드는 단일의 새로운 의사 난수 제네레이터를 작성합니다. 이것은, 다음의 식과 완전히 같습니다.
This 이 새로운 의사 난수 제네레이터는, 이후 이 메소드에의 모든 호출에 사용됩니다. 다른 장소에서는 사용되지 않습니다.new java.util.Random
이 메소드는, 복수의 thread를 올바르게 사용할 수 있도록(듯이) 적절히 동기 됩니다. 그러나, 다수의 thread로 의사 난수를 고빈도로 발생할 필요가 있는 경우는, thread 독자적인 의사 난수 제네레이터를 준비해 각 thread의 컨텐션을 줄여도 괜찮습니다.
double
의 의사 난수. 범위는,0.0
이상 1.0
미만Random.nextDouble()
public static int abs(int a)
int
치의 절대치를 돌려줍니다. 인수가 부가 아닌 경우는 인수 그 자체를 돌려줍니다. 부 때는, 그 정부를 반대로 한 값을 돌려줍니다.
인수가 Integer.MIN_VALUE
의 값 (int
의 최소치)과 동일한 경우는, 결과도 같은 값 (0 보다 작은 값)이 됩니다.
a
- 속성치를 결정하는 인수
Integer.MIN_VALUE
public static long abs(long a)
long
치의 절대치를 돌려줍니다. 인수가 부가 아닌 경우는 인수 그 자체를 돌려줍니다. 부 때는, 그 정부를 반대로 한 값을 돌려줍니다.
인수가 Long.MIN_VALUE
의 값 (long
의 최소치)과 동일한 경우는, 결과도 같은 값 (0 보다 작은 값)이 됩니다.
a
- 속성치를 결정하는 인수
Long.MIN_VALUE
public static float abs(float a)
float
치의 절대치를 돌려줍니다. 인수가 부가 아닌 경우는 인수 그 자체를 돌려줍니다. 부 때는, 그 정부를 반대로 한 값을 돌려줍니다. 특례로서:
Float.intBitsToFloat(0x7fffffff & Float.floatToIntBits(a))
a
- 속성치를 결정하는 인수
public static double abs(double a)
double
치의 절대치를 돌려줍니다. 인수가 부가 아닌 경우는 인수 그 자체를 돌려줍니다. 부 때는, 그 정부를 반대로 한 값을 돌려줍니다. 특례로서:
Double.longBitsToDouble((Double.doubleToLongBits(a) <<1) >>>1)
a
- 속성치를 결정하는 인수
public static int max(int a, int b)
int
치의 쳐 큰 편을 돌려줍니다. 즉, 결과는 Integer.MAX_VALUE
의 값에 가까운 편의 인수가 됩니다. 인수의 값이 같은 경우는 같은 값을 돌려줍니다.
a
- 인수b
- 별의 인수
a
와 b
의 어느 쪽인지 큰 (분)편Long.MAX_VALUE
public static long max(long a, long b)
long
치의 쳐 큰 편을 돌려줍니다. 즉, 결과는 Long.MAX_VALUE
의 값에 가까운 편의 인수가 됩니다. 인수의 값이 같은 경우는 같은 값을 돌려줍니다.
a
- 인수b
- 별의 인수
a
와 b
의 어느 쪽인지 큰 (분)편Long.MAX_VALUE
public static float max(float a, float b)
float
치의 쳐 큰 편을 돌려줍니다. 즉, 결과는 정의 무한대에 가까운 편의 인수가 됩니다. 인수의 값이 같은 경우는 같은 값을 돌려줍니다. 어느 쪽인가의치가 NaN 의 경우는 NaN 를 돌려줍니다. 수치 비교 연산자와는 달라, 이 메소드는 부의 제로가 엄밀하게는 정의 제로보다 작다고 봅니다. 한편의 인수가 정의 제로로 이제(벌써) 한편이 부의 제로의 경우는, 정의 제로를 돌려줍니다.
a
- 인수b
- 별의 인수
a
와 b
의 어느 쪽인지 큰 (분)편public static double max(double a, double b)
double
치의 쳐 큰 편을 돌려줍니다. 즉, 결과는 정의 무한대에 가까운 편의 인수가 됩니다. 인수의 값이 같은 경우는 같은 값을 돌려줍니다. 어느 쪽인가의치가 NaN 의 경우는 NaN 를 돌려줍니다. 수치 비교 연산자와는 달라, 이 메소드는 부의 제로가 엄밀하게는 정의 제로보다 작다고 봅니다. 한편의 인수가 정의 제로로 이제(벌써) 한편이 부의 제로의 경우는, 정의 제로를 돌려줍니다.
a
- 인수b
- 별의 인수
a
와 b
의 어느 쪽인지 큰 (분)편public static int min(int a, int b)
int
치의 쳐 작은 편을 돌려줍니다. 즉, 결과는 Integer.MIN_VALUE
의 값에 가까운 편의 인수가 됩니다. 인수의 값이 같은 경우는 같은 값을 돌려줍니다.
a
- 인수b
- 별의 인수
a
와 b
의 어느 쪽인지 작은 (분)편Long.MIN_VALUE
public static long min(long a, long b)
long
치의 쳐 작은 편을 돌려줍니다. 즉, 결과는 Long.MIN_VALUE
의 값에 가까운 편의 인수가 됩니다. 인수의 값이 같은 경우는 같은 값을 돌려줍니다.
a
- 인수b
- 별의 인수
a
와 b
의 어느 쪽인지 작은 (분)편Long.MIN_VALUE
public static float min(float a, float b)
float
치의 쳐 작은 편을 돌려줍니다. 즉, 결과는 부의 무한대에 가까운 편의 값이 됩니다. 인수의 값이 같은 경우는 같은 값을 돌려줍니다. 어느 쪽인가의치가 NaN 의 경우는 NaN 를 돌려줍니다. 수치 비교 연산자와는 달라, 이 메소드는 부의 제로가 엄밀하게는 정의 제로보다 작다고 봅니다. 한편의 인수가 정의 제로로 이제(벌써) 한편이 부의 제로의 경우는, 부의 제로를 돌려줍니다.
a
- 인수b
- 별의 인수
a
와 b
의 어느 쪽인지 작은 (분)편public static double min(double a, double b)
double
치의 쳐 작은 편을 돌려줍니다. 즉, 결과는 부의 무한대에 가까운 편의 값이 됩니다. 인수의 값이 같은 경우는 같은 값을 돌려줍니다. 어느 쪽인가의치가 NaN 의 경우는 NaN 를 돌려줍니다. 수치 비교 연산자와는 달라, 이 메소드는 부의 제로가 엄밀하게는 정의 제로보다 작다고 봅니다. 한편의 인수가 정의 제로로 이제(벌써) 한편이 부의 제로의 경우는, 부의 제로를 돌려줍니다.
a
- 인수b
- 별의 인수
a
와 b
의 어느 쪽인지 작은 (분)편public static double ulp(double d)
double
치의 ulp 는, 이 부동 소수점치와 절대치로 다음에 큰 double
치와의 사이의 정의 거리입니다. x 가 NaN 이외의 경우,ulp(-x) == ulp(x)
입니다.
특례로서:
Double.MIN_VALUE
가 된다
Double.MAX_VALUE
의 경우, 결과는 2971 에 동일해진다
d
- ulp 가 반환되는 부동 소수점치
public static float ulp(float f)
float
치의 ulp 는, 이 부동 소수점치와 절대치로 다음에 큰 float
치와의 사이의 정의 거리입니다. x 가 NaN 이외의 경우,ulp(-x) == ulp(x)
입니다.
특례로서:
Float.MIN_VALUE
가 된다
Float.MAX_VALUE
의 경우, 결과는 2104 에 동일해진다
f
- ulp 가 반환되는 부동 소수점치
public static double signum(double d)
특례로서:
d
- 부호가 반환되는 부동 소수점치
public static float signum(float f)
특례로서:
f
- 부호가 반환되는 부동 소수점치
public static double sinh(double x)
double
치의 쌍곡선 정현을 돌려줍니다. x 의 쌍곡선 정현은 (ex - e-x)/2 으로 나타내집니다. 여기서,e 는 Euler's number 입니다.
특례로서:
계산 결과는, 정확한 결과의 2.5 ulp 이내가 아니면 안됩니다.
x
- 쌍곡선 정현이 반환되는 숫자
x
의 쌍곡선 정현public static double cosh(double x)
double
치의 쌍곡선 여현을 돌려줍니다. x 의 쌍곡선 여현은 (ex + e-x)/2 으로 나타내집니다. 여기서,e 는 Euler's number 입니다.
특례로서:
1.0
이 된다
계산 결과는, 정확한 결과의 2.5 ulp 이내가 아니면 안됩니다.
x
- 쌍곡선 여현이 반환되는 숫자
x
의 쌍곡선 여현public static double tanh(double x)
double
치의 쌍곡선 탄젠트를 돌려줍니다. x 의 쌍곡선 탄젠트는 (ex - e-x)/(ex + e-x)로 나타내집니다. 즉,sinh(x) /cosh(x) . 정확한 tanh 의 절대치는 항상 1 미만입니다.
특례로서:
+1. 0
이 된다
-1. 0
이 된다
계산 결과는, 정확한 결과의 2.5 ulp 이내가 아니면 안됩니다. 유한 입력의 tanh
의 결과는, 1 이하의 절대치를 가지지 않으면 안됩니다. ± 1 의 제한치의 ulp 의 1/2 이내인 경우, 올바르게 부호를 붙일 수 있었던 ±1.0
이 돌려주어집니다.
x
- 쌍곡선 탄젠트가 반환되는 숫자
x
의 쌍곡선 탄젠트public static double hypot(double x, double y)
특례로서:
계산 결과는, 정확한 결과의 1 ulp 이내가 아니면 안됩니다. 1 개의 파라미터가 일정한 경우, 결과는 이제(벌써) 한편의 파라미터로 반 단조로운 것에 한정합니다.
x
- 치y
- 치
public static double expm1(double x)
expm1(x)
+ 1 의 정확한 합계는,exp(x)
보다 ex 의 진정한 결과에 꽤 근처 됩니다.
특례로서:
계산 결과는, 정확한 결과의 1 ulp 이내가 아니면 안됩니다. 결과는 반 단조로운 것에 한정합니다. 유한 입력의 expm1
의 결과는,-1. 0
이상이 아니면 안됩니다. ex
- 의 정확한 결과가 제한치 -1 의 1/2 ulp 이내인 경우,-1. 0
이 돌려주어집니다.
x
- ex
-1 의 계산으로 설정한 e 의 지수
x
- 1public static double log1p(double x)
x
의 값이 작은 경우,log1p(x)
의 결과는,log(1.0+x)
의 부동 소수점 평가보다 ln(1 + x
)의 진정한 결과에 꽤 근처 됩니다.
특례로서:
계산 결과는, 정확한 결과의 1 ulp 이내가 아니면 안됩니다. 결과는 반 단조로운 것에 한정합니다.
x
- 치
x
+ 1)의 값. x
+ 1 의 자연대수public static double copySign(double magnitude, double sign)
StrictMath.copySign
메소드와는 달라, 이 메소드는, 정의 값으로 해서 다루어지기 위해서(때문에) NaN sign
인수를 필요로 하지 않습니다. 구현은, 퍼포먼스를 향상시키기 위해서(때문에), 일부의 NaN 인수를 정으로서 취급해, 그 외의 NaN 인수를 부로서 취급하도록(듯이) 허가됩니다.
magnitude
- 결과의 절대치를 제공하는 파라미터sign
- 결과의 부호를 제공하는 파라미터
magnitude
의 절대치와 sign
의 부호를 가지는 값public static float copySign(float magnitude, float sign)
StrictMath.copySign
메소드와는 달라, 이 메소드는, 정의 값으로 해서 다루어지기 위해서(때문에) NaN sign
인수를 필요로 하지 않습니다. 구현은, 퍼포먼스를 향상시키기 위해서(때문에), 일부의 NaN 인수를 정으로서 취급해, 그 외의 NaN 인수를 부로서 취급하도록(듯이) 허가됩니다.
magnitude
- 결과의 절대치를 제공하는 파라미터sign
- 결과의 부호를 제공하는 파라미터
magnitude
의 절대치와 sign
의 부호를 가지는 값public static int getExponent(float f)
float
의 표현으로 사용되는 불편 지수를 돌려줍니다. 특례로서:
Float.MAX_EXPONENT
+ 1 이 됩니다.
Float.MIN_EXPONENT
-1 가 됩니다.
f
- float
치
public static int getExponent(double d)
double
의 표현으로 사용되는 불편 지수를 돌려줍니다. 특례로서:
Double.MAX_EXPONENT
+ 1 이 됩니다.
Double.MIN_EXPONENT
-1 가 됩니다.
d
- double
치
public static double nextAfter(double start, double direction)
특례로서:
direction
가 변경되지 않고 돌려주어집니다.
start
가 ±Double.MIN_VALUE
이며,direction
가 결과에 작은 절대치가 포함되는 것 같은 값을 가지는 경우,start
와 같은 부호를 가지는 제로가 돌려주어집니다.
start
가 무한하고,direction
가 결과에 작은 절대치가 포함되는 것 같은 값을 가지는 경우,start
와 같은 부호를 가지는 Double.MAX_VALUE
가 돌려주어집니다.
start
가 ± Double.MAX_VALUE
와 동일하고,direction
가 결과에 큰 절대치가 포함되는 것 같은 값을 가지는 경우,start
와 같은 부호를 가지는 무한대가 돌려주어집니다.
start
- 개시 부동 소수점치direction
- start
의 이웃이나 start
의 어느 쪽이 반환되는지를 나타내는 값
direction
의 방향으로 start
에 인접하는 부동 소수점치public static float nextAfter(float start, double direction)
특례로서:
direction
에 동일한 값이 돌려주어집니다.
start
가 ±Float.MIN_VALUE
이며,direction
가 결과에 작은 절대치가 포함되는 것 같은 값을 가지는 경우,start
와 같은 부호를 가지는 제로가 돌려주어집니다.
start
가 무한하고,direction
가 결과에 작은 절대치가 포함되는 것 같은 값을 가지는 경우,start
와 같은 부호를 가지는 Float.MAX_VALUE
가 돌려주어집니다.
start
가 ± Float.MAX_VALUE
와 동일하고,direction
가 결과에 큰 절대치가 포함되는 것 같은 값을 가지는 경우,start
와 같은 부호를 가지는 무한대가 돌려주어집니다.
start
- 개시 부동 소수점치direction
- start
의 이웃이나 start
의 어느 쪽이 반환되는지를 나타내는 값
direction
의 방향으로 start
에 인접하는 부동 소수점치public static double nextUp(double d)
d
에 인접하는 부동 소수점치를 돌려줍니다. 이 메소드는 의미상은 nextAfter(d, Double.POSITIVE_INFINITY)
와 같습니다. 다만,nextUp
구현은, 거기에 동일한 nextAfter
호출보다 고속으로 실행할 수 있는 일도 있습니다.
특례로서:
Double.MIN_VALUE
가 됩니다.
d
- 개시 부동 소수점치
public static float nextUp(float f)
f
에 인접하는 부동 소수점치를 돌려줍니다. 이 메소드는 의미상은 nextAfter(f, Float.POSITIVE_INFINITY)
와 같습니다. 다만,nextUp
구현은, 거기에 동일한 nextAfter
호출보다 고속으로 실행할 수 있는 일도 있습니다.
특례로서:
Float.MIN_VALUE
가 됩니다.
f
- 개시 부동 소수점치
public static double scalb(double d, int scaleFactor)
d
× 2scaleFactor
를 돌려줍니다. 부동 소수점치 세트에 대해서는, 「Java 언어 스펙」을 참조해 주세요. 결과의 지수가 Double.MIN_EXPONENT
로부터 Double.MAX_EXPONENT
의 사이의 경우, 답은 정확하게 계산됩니다. 결과의 지수가 Double.MAX_EXPONENT
보다 커지는 경우, 무한대가 돌려주어집니다. 결과가 비정규의 경우는, 정밀도가 없어질 가능성이 있습니다. 즉,scalb(x, n)
가 비정규의 경우,scalb(scalb(x, n), -n)
는 x 와 동일하지 않을 가능성이 있습니다. 결과가 NaN 이외의 경우, 그 결과는 d
와 같은 부호를 가집니다.
특례로서:
d
- 2 의 누승에 의해 슬캘링 되는 수scaleFactor
- d
를 슬캘링 하기 위해서 사용되는 2 의 누승
d
× 2scaleFactor
public static float scalb(float f, int scaleFactor)
d
× 2scaleFactor
를 돌려줍니다. 부동 소수점치 세트에 대해서는, 「Java 언어 스펙」을 참조해 주세요. 결과의 지수가 Float.MIN_EXPONENT
로부터 Float.MAX_EXPONENT
의 사이의 경우, 답은 정확하게 계산됩니다. 결과의 지수가 Float.MAX_EXPONENT
보다 커지는 경우, 무한대가 돌려주어집니다. 결과가 비정규의 경우는, 정밀도가 없어질 가능성이 있습니다. 즉,scalb(x, n)
가 비정규의 경우,scalb(scalb(x, n), -n)
는 x 와 동일하지 않을 가능성이 있습니다. 결과가 NaN 이외의 경우, 그 결과는 f
와 같은 부호를 가집니다.
특례로서:
f
- 2 의 누승에 의해 슬캘링 되는 수scaleFactor
- f
를 슬캘링 하기 위해서 사용되는 2 의 누승
f
× 2scaleFactor
|
JavaTM Platform Standard Ed. 6 |
|||||||||
앞의 클래스 다음의 클래스 | 프레임 있어 프레임 없음 | |||||||||
개요: 상자 | 필드 | 생성자 | 메소드 | 상세 : 필드 | 생성자 | 메소드 |
Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy 도 참조해 주세요.