# Java Math tanh()

The Java Math tanh() method returns the hyperbolic tangent of the specified value.

The hyperbolic tangent is equivalent to (ex - e-x)/(ex + e-x), where e is Euler's number. Also `tanh = sinh/cosh`.

The syntax of the `tanh()` method is:

``Math.tanh(double value)``

Here, `tanh()` is a static method. Hence, we are accessing the method using the class name, `Math`.

## tanh() Parameters

The `tanh()` method takes a single parameter.

• value - angle whose hyperbolic tangent is to be determined

Note: The value is generally used in radians.

## tanh() Return Values

• returns the hyperbolic tangent of value
• returns NaN if the argument value is NaN
• returns 1.0 if the argument is positive infinity
• returns -1.0 if the argument is negative infinity

Note: If the argument is zero, then the method returns zero with the same sign as the argument.

## Example 1: Java Math tanh()

``````class Main {
public static void main(String[] args) {

// create a double variable
double value1 = 45.0;
double value2 = 60.0;
double value3 = 30.0;

// convert into radians
value1 = Math.toRadians(value1);
value2 = Math.toRadians(value2);
value3 = Math.toRadians(value3);

// compute the hyperbolic tangent
System.out.println(Math.tanh(value1));  // 0.6557942026326724
System.out.println(Math.tanh(value2));  // 0.7807144353592677
System.out.println(Math.tanh(value3));  // 0.4804727781564516
}
}``````

In the above example, notice the expression,

``Math.tanh(value1)``

Here, we have directly used the class name to call the method. It is because `tanh()` is a static method.

Note: We have used the Java Math.toRadians() method to convert all the values into radians.

## Example 2: Compute tanh() Using sinh() and cosh()

``````class Main {
public static void main(String[] args) {

// create a double variable
double value1 = 45.0;
double value2 = 60.0;
double value3 = 30.0;

// convert into radians
value1 = Math.toRadians(value1);
value2 = Math.toRadians(value2);
value3 = Math.toRadians(value3);

// compute the hyperbolic tangent: sinh()/cosh()
// returns 0.6557942026326724
System.out.println(Math.sinh(value1)/Math.cosh(value1));

// returns 0.7807144353592677
System.out.println(Math.sinh(value2)/Math.cosh(value2));

// returns 0.4804727781564516
System.out.println(Math.sinh(value3)/Math.cosh(value3));
}
}``````

In the above example, notice the expression,

``Math.sinh(value1)/Math.cosh(value2)``

Here, we are computing the hyperbolic tangent using `sinh()/cosh()` formula. As we can see the result of `tanh()` and `sinh()/cosh()` is same.

## Example 2: tanh() With Zero, NaN and Infinite

``````class Main {
public static void main(String[] args) {

// create a double variable
double value1 = Double.POSITIVE_INFINITY;
double value2 = Double.NEGATIVE_INFINITY;
double value3 = Math.sqrt(-5);
double value4 = 0.0;

// convert into radians
value1 = Math.toRadians(value1);
value2 = Math.toRadians(value2);
value3 = Math.toRadians(value3);
value4 = Math.toRadians(value4);

// compute the hyperbolic tangent
System.out.println(Math.tanh(value1));  // 1.0
System.out.println(Math.tanh(value2));  // -1.0
System.out.println(Math.tanh(value3));  // NaN
System.out.println(Math.tanh(value4));  // 0.0
}
}``````

In the above example,

• Double.POSITIVE_INFINITY - implements positive infinity in Java
• Double.NEGATIVE_INFINITY - implements negative infinity in Java
• Math.sqrt(-5) - square root of a negative number is not a number

We have used the Java Math.sqrt() method to calculate the square root of a number.

Note: The `tanh()` method returns 1.0 for the positive infinity argument and -1.0 for the negative infinity argument.

### Recommended Tutorials

Did you find this article helpful?