All Packages Class Hierarchy This Package Previous Next Index
Object | +----java.lang.Math
Math
contains methods for performing basic
numeric operations such as the elementary exponential, logarithm,
square root, and trigonometric functions.
To help ensure portability of Java programs, the definitions of
many of the numeric functions in this package require that they
produce the same results as certain published algorithms. These
algorithms are available from the well-known network library
netlib
as the package "Freely Distributable
Math Library" (fdlibm
). These algorithms, which
are written in the C programming language, are then to be
understood as executed with all floating-point operations
following the rules of Java floating-point arithmetic.
The network library may be found on the World Wide Web at
http://netlib.att.com/
then perform a keyword search for "fdlibm
".
The Java math library is defined with respect to the version of
fdlibm
dated January 4, 1995. Where
fdlibm
provides more than one definition for a
function (such as acos
), use the "IEEE 754 core
function" version (residing in a file whose name begins with
the letter e
).
double
value that is closer than any other to
e
, the base of the natural logarithms.
double
value that is closer than any other to
pi, the ratio of the circumference of a circle to its diameter.
int
value.
long
value.
float
value.
double
value.
b
, a
)
to polar (r, theta).
double
value that is not less than the argument and is
equal to a mathematical integer.
double
value.
double
value that is not greater than the argument and
is equal to a mathematical integer.
double
value.
int
values.
long
values.
float
values.
double
values.
int
values.
long
values.
float
values.
double
values.
0.0
and 1.0
.
int
to the argument.
long
to the argument.
double
value.
public static final double E
double
value that is closer than any other to
e
, the base of the natural logarithms.
public static final double PI
double
value that is closer than any other to
pi, the ratio of the circumference of a circle to its diameter.
public static native double IEEEremainder(double f1, double f2)
f1 - f2
× n,
where n is the mathematical integer closest to the exact
mathematical value of the quotient f1/f2
, and if two
mathematical integers are equally close to f1/f2
,
then n is the integer that is even. If the remainder is
zero, its sign is the same as the sign of the first argument.
f1
is divided by
f2
.
public static int abs(int a)
int
value.
If the argument is not negative, the argument is returned.
If the argument is negative, the negation of the argument is returned.
Note that if the argument is equal to the value of
Integer.MIN_VALUE
, the most negative representable
int
value, the result is that same value, which is
negative.
int
value.
public static long abs(long a)
long
value.
If the argument is not negative, the argument is returned.
If the argument is negative, the negation of the argument is returned.
Note that if the argument is equal to the value of
Long.MIN_VALUE
, the most negative representable
long
value, the result is that same value, which is
negative.
long
value.
public static float abs(float a)
float
value.
If the argument is not negative, the argument is returned.
If the argument is negative, the negation of the argument is returned.
float
value.
public static double abs(double a)
double
value.
If the argument is not negative, the argument is returned.
If the argument is negative, the negation of the argument is returned.
double
value.
public static native double acos(double a)
public static native double asin(double a)
public static native double atan(double a)
public static native double atan2(double a, double b)
b
, a
)
to polar (r, theta).
This method computes the phase theta by computing an arc tangent
of b/a
in the range of -pi to pi.
double
value.
double
value.
public static native double ceil(double a)
double
value that is not less than the argument and is
equal to a mathematical integer.
double
value.
double
value that is not less than the argument
and is equal to a mathematical integer.
public static native double cos(double a)
public static native double exp(double a)
double
value.
double
value.
public static native double floor(double a)
double
value that is not greater than the argument and
is equal to a mathematical integer.
double
value.
double
value that is not greater than the argument
and is equal to a mathematical integer.
public static native double log(double a)
double
value.
0.0
.
a
, the natural logarithm of
a
.
public static int max(int a, int b)
int
values.
int
value.
int
value.
a
and b
.
public static long max(long a, long b)
long
values.
long
value.
long
value.
a
and b
.
public static float max(float a, float b)
float
values. If either value
is NaN
, then the result is NaN
. Unlike the
the numerical comparison operators, this method considers negative zero
to be strictly smaller than positive zero.
float
value.
float
value.
a
and b
.
public static double max(double a, double b)
double
values. If either value
is NaN
, then the result is NaN
. Unlike the
the numerical comparison operators, this method considers negative zero
to be strictly smaller than positive zero.
double
value.
double
value.
a
and b
.
public static int min(int a, int b)
int
values.
int
value.
int
value.
a
and b
.
public static long min(long a, long b)
long
values.
long
value.
long
value.
a
and b
.
public static float min(float a, float b)
float
values. If either value
is NaN
, then the result is NaN
. Unlike the
the numerical comparison operators, this method considers negative zero
to be strictly smaller than positive zero.
float
value.
float
value.
a
and b.
public static double min(double a, double b)
double
values. If either value
is NaN
, then the result is NaN
. Unlike the
the numerical comparison operators, this method considers negative zero
to be strictly smaller than positive zero.
double
value.
double
value.
a
and b
.
public static native double pow(double a, double b)
If (a == 0.0
), then b
must be
greater than 0.0
; otherwise an exception is thrown.
An exception also will occur if (a <= 0.0
)
and b
is not equal to a whole number.
double
value.
double
value.
ab
.
a == 0.0
) and
(b <= 0.0
), or
if (a <= 0.0
) and b
is not equal to a whole number.
public static synchronized double random()
0.0
and 1.0
.
Random number generators are often referred to as pseudorandom number
generators because the numbers produced tend to repeat themselves after
a period of time.
double
between 0.0
and 1.0
.
public static native double rint(double a)
double
value.
double
value to a
that is
equal to a mathematical integer. If two double
values that are mathematical integers are equally close to the
value of the argument, the result is the integer value that
is even.
public static int round(float a)
int
to the argument.
If the argument is negative infinity or any value less than or
equal to the value of Integer.MIN_VALUE
, the result is
equal to the value of Integer.MIN_VALUE
.
If the argument is positive infinity or any value greater than or
equal to the value of Integer.MAX_VALUE
, the result is
equal to the value of Integer.MAX_VALUE
.
float
value.
int
value.
public static long round(double a)
long
to the argument.
If the argument is negative infinity or any value less than or
equal to the value of Long.MIN_VALUE
, the result is
equal to the value of Long.MIN_VALUE
.
If the argument is positive infinity or any value greater than or
equal to the value of Long.MAX_VALUE
, the result is
equal to the value of Long.MAX_VALUE
.
double
value.
long
value.
public static native double sin(double a)
public static native double sqrt(double a)
double
value.
double
value.
a
.
If the argument is NaN or less than zero, the result is NaN.
public static native double tan(double a)
All Packages Class Hierarchy This Package Previous Next Index