java.lang

## Class Math

• ```public final class Math
extends Object```
The class Math contains methods for performing basic numeric operations. Since: JDK1.0, CLDC 1.0
• ### Field Summary

Fields
Modifier and Type Field and Description
`static double` `E`
The double value that is closer than any other to e, the base of the natural logarithms.
`static double` `PI`
The double value that is closer than any other to , the ratio of the circumference of a circle to its diameter.
• ### Constructor Summary

Constructors
Constructor and Description
`Math()`
• ### Method Summary

All Methods
Modifier and Type Method and Description
`static double` `abs(double a)`
Returns the absolute value of a double value.
`static float` `abs(float a)`
Returns the absolute value of a float value.
`static int` `abs(int a)`
Returns the absolute value of an int value.
`static long` `abs(long a)`
Returns the absolute value of a long value.
`static double` `ceil(double a)`
Returns the smallest (closest to negative infinity) double value that is not less than the argument and is equal to a mathematical integer.
`static double` `cos(double a)`
Returns the trigonometric cosine of an angle.
`static double` `floor(double a)`
Returns the largest (closest to positive infinity) double value that is not greater than the argument and is equal to a mathematical integer.
`static double` ```max(double a, double b)```
Returns the greater of two double values.
`static float` ```max(float a, float b)```
Returns the greater of two float values.
`static int` ```max(int a, int b)```
Returns the greater of two int values.
`static long` ```max(long a, long b)```
Returns the greater of two long values.
`static double` ```min(double a, double b)```
Returns the smaller of two double values.
`static float` ```min(float a, float b)```
Returns the smaller of two float values.
`static int` ```min(int a, int b)```
Returns the smaller of two int values.
`static long` ```min(long a, long b)```
Returns the smaller of two long values.
`static double` ```nextAfter(double start, double direction)```
`static float` ```nextAfter(float start, double direction)```
`static double` `nextDown(double d)`
`static long` `round(double d)`
Returns the result of rounding the argument to an integer.
`static int` `round(float f)`
Returns the result of rounding the argument to an integer.
`static double` `sin(double a)`
Returns the trigonometric sine of an angle.
`static double` `sqrt(double a)`
Returns the correctly rounded positive square root of a double value.
`static double` `tan(double a)`
Returns the trigonometric tangent of an angle.
`static double` `toDegrees(double angrad)`
Converts an angle measured in radians to the equivalent angle measured in degrees.
`static double` `toRadians(double angdeg)`
Converts an angle measured in degrees to the equivalent angle measured in radians.
• ### Methods inherited from class java.lang.Object

`clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`
• ### Field Detail

• #### E

`public static final double E`
The double value that is closer than any other to e, the base of the natural logarithms. Since: CLDC 1.1 See Also:Constant Field Values
Constant Field Values
• #### PI

`public static final double PI`
The double value that is closer than any other to , the ratio of the circumference of a circle to its diameter. Since: CLDC 1.1 See Also:Constant Field Values
Constant Field Values
• ### Constructor Detail

• #### Math

`public Math()`
• ### Method Detail

• #### abs

`public static double abs(double a)`
Returns the absolute value of 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. Special cases: If the argument is positive zero or negative zero, the result is positive zero. If the argument is infinite, the result is positive infinity. If the argument is NaN, the result is NaN. In other words, the result is equal to the value of the expression: Double.longBitsToDouble((Double.doubleToLongBits(a)<<1)>>>1)
• #### abs

`public static float abs(float a)`
Returns the absolute value of 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. Special cases: If the argument is positive zero or negative zero, the result is positive zero. If the argument is infinite, the result is positive infinity. If the argument is NaN, the result is NaN. In other words, the result is equal to the value of the expression: Float.intBitsToFloat(0x7fffffff & Float.floatToIntBits(a))
• #### abs

`public static int abs(int a)`
Returns the absolute value of an 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.
• #### abs

`public static long abs(long a)`
Returns the absolute value of 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.
• #### ceil

`public static double ceil(double a)`
Returns the smallest (closest to negative infinity) double value that is not less than the argument and is equal to a mathematical integer. Special cases: If the argument value is already equal to a mathematical integer, then the result is the same as the argument. If the argument is NaN or an infinity or positive zero or negative zero, then the result is the same as the argument. If the argument value is less than zero but greater than -1.0, then the result is negative zero. Note that the value of Math.ceil(x) is exactly the value of -Math.floor(-x).
• #### cos

`public static double cos(double a)`
Returns the trigonometric cosine of an angle. Special case: If the argument is NaN or an infinity, then the result is NaN.
• #### floor

`public static double floor(double a)`
Returns the largest (closest to positive infinity) double value that is not greater than the argument and is equal to a mathematical integer. Special cases: If the argument value is already equal to a mathematical integer, then the result is the same as the argument. If the argument is NaN or an infinity or positive zero or negative zero, then the result is the same as the argument.
• #### max

```public static double max(double a,
double b)```
Returns the greater of two double values. That is, the result is the argument closer to positive infinity. If the arguments have the same value, the result is that same value. 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. If one argument is positive zero and the other negative zero, the result is positive zero.
• #### max

```public static float max(float a,
float b)```
Returns the greater of two float values. That is, the result is the argument closer to positive infinity. If the arguments have the same value, the result is that same value. 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. If one argument is positive zero and the other negative zero, the result is positive zero.
• #### max

```public static int max(int a,
int b)```
Returns the greater of two int values. That is, the result is the argument closer to the value of Integer.MAX_VALUE. If the arguments have the same value, the result is that same value.
• #### max

```public static long max(long a,
long b)```
Returns the greater of two long values. That is, the result is the argument closer to the value of Long.MAX_VALUE. If the arguments have the same value, the result is that same value.
• #### min

```public static double min(double a,
double b)```
Returns the smaller of two double values. That is, the result is the value closer to negative infinity. If the arguments have the same value, the result is that same value. 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. If one argument is positive zero and the other is negative zero, the result is negative zero.
• #### min

```public static float min(float a,
float b)```
Returns the smaller of two float values. That is, the result is the value closer to negative infinity. If the arguments have the same value, the result is that same value. 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. If one argument is positive zero and the other is negative zero, the result is negative zero.
• #### min

```public static int min(int a,
int b)```
Returns the smaller of two int values. That is, the result the argument closer to the value of Integer.MIN_VALUE. If the arguments have the same value, the result is that same value.
• #### min

```public static long min(long a,
long b)```
Returns the smaller of two long values. That is, the result is the argument closer to the value of Long.MIN_VALUE. If the arguments have the same value, the result is that same value.
• #### sin

`public static double sin(double a)`
Returns the trigonometric sine of an angle. Special cases: If the argument is NaN or an infinity, then the result is NaN. If the argument is positive zero, then the result is positive zero; if the argument is negative zero, then the result is negative zero.
• #### sqrt

`public static double sqrt(double a)`
Returns the correctly rounded positive square root of a double value. Special cases: If the argument is NaN or less than zero, then the result is NaN. If the argument is positive infinity, then the result is positive infinity. If the argument is positive zero or negative zero, then the result is the same as the argument.
• #### tan

`public static double tan(double a)`
Returns the trigonometric tangent of an angle. Special cases: If the argument is NaN or an infinity, then the result is NaN. If the argument is positive zero, then the result is positive zero; if the argument is negative zero, then the result is negative zero
• #### toDegrees

`public static double toDegrees(double angrad)`
Converts an angle measured in radians to the equivalent angle measured in degrees.

`public static double toRadians(double angdeg)`
Converts an angle measured in degrees to the equivalent angle measured in radians.
• #### round

`public static long round(double d)`
Returns the result of rounding the argument to an integer. The result is equivalent to `(long) Math.floor(d+0.5)`.

Special cases:

• `round(+0.0) = (long) +0.0`
• `round(-0.0) = (long) +0.0`
• `round((anything > Long.MAX_VALUE) = Long.MAX_VALUE`
• `round((anything < Long.MIN_VALUE) = Long.MIN_VALUE`
• `round(+infinity) = Long.MAX_VALUE`
• `round(-infinity) = Long.MIN_VALUE`
• `round(NaN) = (long) +0.0`
Parameters:
`d` - the value to be rounded.
Returns:
the closest integer to the argument.
• #### round

`public static int round(float f)`
Returns the result of rounding the argument to an integer. The result is equivalent to `(int) Math.floor(f+0.5)`.

Special cases:

• `round(+0.0) = (int) +0.0`
• `round(-0.0) = (int) +0.0`
• `round((anything > Integer.MAX_VALUE) = Integer.MAX_VALUE`
• `round((anything < Integer.MIN_VALUE) = Integer.MIN_VALUE`
• `round(+infinity) = Integer.MAX_VALUE`
• `round(-infinity) = Integer.MIN_VALUE`
• `round(NaN) = (int) +0.0`
Parameters:
`f` - the value to be rounded.
Returns:
the closest integer to the argument.
• #### nextDown

`public static double nextDown(double d)`
• #### nextAfter

```public static double nextAfter(double start,
double direction)```
• #### nextAfter

```public static float nextAfter(float start,
double direction)```