This class
is identical to the Math class, but additionally requires that its
methods strictly adhere to the behavior of certain published
algorithms. The methods of StrictMath are intended
to operate identically on all platforms, and must produce exactly the
same result (down to the very least significant bit) as certain
well-known standard algorithms. When strict platform-independence of
floating-point results is not required, use the
Math class for better performance.
public final class
StrictMath {
// No Constructor
// Public Constants
public static final double
E ; =2.718281828459045
public static final double
PI ; =3.141592653589793
// Public Class Methods
public static int
abs (int
a );
public static long
abs (long
a );
public static float
abs (float
a );
public static double
abs (double
a );
public static double
acos (double
a ); native
public static double
asin (double
a ); native
public static double
atan (double
a ); native
public static double
atan2 (double
y , double
x ); native
5.0 public static double
cbrt (double
a ); native
public static double
ceil (double
a ); native
public static double
cos (double
a ); native
5.0 public static double
cosh (double
x ); native
public static double
exp (double
a ); native
5.0 public static double
expm1 (double
x ); native
public static double
floor (double
a ); native
5.0 public static double
hypot (double
x , double
y ); native
public static double
IEEEremainder (double
f1 , double
f2 ); native
public static double
log (double
a ); native
5.0 public static double
log10 (double
a ); native
5.0 public static double
log1p (double
x ); native
public static int
max (int
a , int
b );
public static long
max (long
a , long
b );
public static float
max (float
a , float
b );
public static double
max (double
a , double
b );
public static int
min (int
a , int
b );
public static long
min (long
a , long
b );
public static float
min (float
a , float
b );
public static double
min (double
a , double
b );
public static double
pow (double
a , double
b ); native
public static double
random ( );
public static double
rint (double
a );
public static int
round (float
a );
public static long
round (double
a );
5.0 public static float
signum (float
f );
5.0 public static double
signum (double
d );
public static double
sin (double
a ); native
5.0 public static double
sinh (double
x ); native
public static double
sqrt (double
a ); native
public static double
tan (double
a ); native
5.0 public static double
tanh (double
x ); native
public static double
toDegrees (double
angrad );
strictfp
public static double
toRadians (double
angdeg );
strictfp
5.0 public static float
ulp (float
f );
5.0 public static double
ulp (double
d );
}