Math class methods in Java with Examples | Set 2

Last Updated : 13 May, 2022

java.math class and its methods | Set 1

1. abs() : java.math.abs() method returns the absolute value of any type of argument passed. This method can handle all the data types.
Special Case :

• Result is positive zero, if the argument is positive zero or negative zero.
• Result is positive infinity, if the argument is infinite.
• Result is NaN, if passed argument is NaN.

Syntax:

```public static datatype abs(datatype arg)
Parameters:
arg - the argument whose absolute value we need
Returns:
absolute value of the passed argument.
```
2. acos() : java.math.acos() method returns the arc cosine value of the passed argument.
arc cosine is inverse cosine of the argument passed.
acos(arg) = cos-1 of arg
Special Case : Result is NaN, if the argument is NaN or its absolute value is greater than 1.
Syntax:

```public static double acos(double a)
Parameters:
a - the argument whose arc cosine value we need.
Returns:
arc cosine value of the argument.
```
Special Point : Math class usually takes radians as an input which is very much different in real life applications since angles is usually represented in degrees.
Syntax:

```public static double toRadians(double deg)
Parameters:
deg - degree angle needs to be in radian.
Returns:
radians equivalent of the degree-argument passed.
```
4. What is NaN argument ?
A constant holding a Not-a-Number (NaN) value of type double. It is equivalent to the value returned by Double.longBitsToDouble(0x7ff8000000000000L).

Java code explaining abs(), acos(), toRadians() method in Math class.

 `// Java program explaining Math class methods ` `// abs(), acos(), toRadians() ` `import` `java.math.*; ` `public` `class` `NewClass ` `{ ` ` `  `    ``public` `static` `void` `main(String[] args) ` `    ``{ ` `        ``// Declaring the variables ` `        ``int` `Vali = -``1``; ` `        ``float` `Valf = .5f; ` ` `  `        ``// Printing the values ` `        ``System.out.println(``"Initial value of int  : "``+Vali); ` `        ``System.out.println(``"Initial value of int  : "``+Valf); ` ` `  ` `  `        ``// Use of .abs() method to get the absoluteValue ` `        ``int` `Absi = Math.abs(Vali); ` `        ``float` `Absf = Math.abs(Valf); ` ` `  `        ``System.out.println(``"Absolute value of int : "``+Absi); ` `        ``System.out.println(``"Absolute value of int : "``+Absf); ` `        ``System.out.println(``""``); ` ` `  `        ``// Use of acos() method ` `        ``// Value greater than 1, so passing NaN ` `        ``double` `Acosi = Math.acos(``60``); ` `        ``System.out.println(``"acos value of Acosi : "``+Acosi); ` `        ``double` `x = Math.PI; ` ` `  `        ``// Use of toRadian() method ` `        ``x = Math.toRadians(x); ` `        ``double` `Acosj = Math.acos(x); ` `        ``System.out.println(``"acos value of Acosj : "``+Acosj); ` `         `  `    ``} ` `} `

Output:

```Initial value of int  : -1
Initial value of int  : 0.5
Absolute value of int : 1
Absolute value of int : 0.5

acos value of Acosi : NaN
acos value of Acosj : 1.5159376794536454
```
5. addExact() : java.math.addExact(int a, int b) method returns the sum of the passed arguments.
Special point : If Result overflows an int or long (according to the passed argument), the method throws ArithmeticException.
Syntax:

```public static int addExact(int x, int y)
or
public static long addExact(long x, long y)
Parameters:
a - first value
b - second value
Returns:
Sum of the specified method arguments - a and b.
```
6. asin() : java.math.asin() method returns the arc sine value of the method argument passed. Returned angle is in the range -pi/2 to pi/2.
arc sine is inverse sine of the argument passed.
asin(arg) = sine-1 of arg
Special Case :

• Result is NaN,if the argument is NaN or its absolute value is greater than 1.
• Result is a zero, if the argument is zero.

Syntax:

```public static double asin(double arg)
Parameters:
arg - argument passed.
Returns:
arc sine of the argument passed.
```
7. cbrt() : java.math.cbrt() method returns the cube root of the passed argument.
Special Point :

• Result is NaN, if the argument is NaN.
• Result is an infinity with the same sign as the argument, if the argument is infinite.
• Result is a zero, if the argument is zero.

Syntax:

```public static double cbrt(double arg)
Parameters:
arg - argument passed.
Returns:
cube root of the argument passed
```
8. Java code explaining addExact(), asin(), cbrt() method in Math class.

 `// Java program explaining Math class methods ` `// addExact(), asin(), cbrt() ` `import` `java.math.*; ` `public` `class` `NewClass ` `{ ` ` `  `    ``public` `static` `void` `main(String[] args) ` `    ``{ ` `        ``int` `a = ``1``, b = ``8``; ` ` `  `        ``// get the result of addExact method ` `        ``int` `radd = Math.addExact(a,b); ` `        ``System.out.println(``"Using addExact() : "``+radd); ` `        ``System.out.println(``""``); ` ` `  `        ``// Use of acos() method ` `        ``// Value greater than 1, so passing NaN ` `        ``double` `Asini = Math.asin(radd); ` `        ``System.out.println(``"asin value of Asini : "``+Asini); ` `        ``double` `x = Math.PI; ` ` `  `        ``// Use of toRadian() method ` `        ``x = Math.toRadians(x); ` `        ``double` `Asinj = Math.asin(x); ` `        ``System.out.println(``"asin value of Asinj : "``+Asinj); ` `        ``System.out.println(``""``); ` ` `  `        ``// Use of cbrt() method ` `        ``double` `cbrtval = Math.cbrt(``216``); ` `        ``System.out.println(``"cube root : "``+cbrtval); ` ` `  `    ``} ` `} `

Output:

```Using addExact() : 9

acos value of Asini : NaN
acos value of Asinj : 0.054858647341251204

cube root : 6.0
```
9. floor() : java.math.floor() method returns the floor value of an argument i.e. the closest integer value which is either less or equal to the passed argument.
eg : 101.23 has floor value = 101
Important point : Same argument is resulted if passed an NaN or infinite argument.

```Syntax:
public static double floor(double arg)
Parameters:
arg - the argument whose floor value we need
Returns:closest possible value that is either less than
or equal to the argument passed
```
10. hypot() : java.math.hypot(double p, double b) method returns hypotenuse of a right triangle on passing the triangle’s base and perpendicular as arguments.
hypotenuse = [perpendicular2 + base2]1/2

Important Point :

• If either argument is infinite, then the result is positive infinity.
• If either argument is NaN and neither argument is infinite, then the result is NaN.
```Syntax:
public static double hypot(double p, double b)
Parameters:
p - perpendicular of the right triangle
b - base of the right triangle
Returns:
hypotenuse of the right triangle
```
11. IEEEremainder() : java.math.IEEERemainder(double d1, double d2) method returns the remainder value by applying remainder operation on two arguments w.r.t IEEE 754 standard.
Remainder value = d1 – d2 * n
where,
n = closest exact value of d1/d2

```Syntax:
public static double IEEEremainder(double d1,double d2)
Parameters:
d1 - dividend
d2 - divisor
Returns:
remainder when f1(dividend) is divided by(divisor)
```
12. log() : java.math.log() method returns the logarithmic value of the passed argument.
```Syntax:
public static double log(double arg)
Parameters:
arg - argument passed.
Returns:
logarithmic value of the argument passed.
```
13. Java code explaining floor(), hypot(), IEEEremainder(), log() method in Math class.

 `// Java program explaining MATH class methods ` `// floor(), hypot(), IEEEremainder(), log() ` `import` `java.lang.*; ` `public` `class` `NewClass ` `{ ` ` `  `    ``public` `static` `void` `main(String[] args) ` `    ``{ ` `        ``// Use of floor method ` `        ``double` `f1 = ``30.56``, f2 = -``56.34``; ` `        ``f1 =Math.floor(f1); ` `        ``System.out.println(``"Floor value of f1 : "``+f1); ` ` `  `        ``f2 =Math.floor(f2); ` `        ``System.out.println(``"Floor value of f2 : "``+f2); ` `        ``System.out.println(``""``); ` ` `  `        ``// Use of hypot() method ` `        ``double` `p = ``12``, b = -``5``; ` `        ``double` `h = Math.hypot(p, b); ` `        ``System.out.println(``"Hypotenuse : "``+h); ` `        ``System.out.println(``""``); ` ` `  `        ``// Use of IEEEremainder() method ` `        ``double` `d1 = ``105``, d2 = ``2``; ` `        ``double` `r = Math.IEEEremainder(d1,d2); ` `        ``System.out.println(``"Remainder : "``+r); ` `        ``System.out.println(``""``); ` `         `  `        ``// Use of log() method ` `        ``double` `l = ``10``; ` `        ``l = Math.log(l); ` `        ``System.out.println(``"Log value of 10 : "``+l); ` `         `  `    ``} ` `} `

Output:

```Floor value of f1 : 30.0
Floor value of f2 : -57.0

Hypotenuse : 13.0

Remainder : 1.0

Log value of 10 : 2.302585092994046
```

java.math class and its methods | Set 3

Article Tags :
Practice Tags :