Home »
Java programming language
Java Math Class static double nextAfter(double starts , double directions) with example
Java Math Class static double nextAfter(double starts , double directions) method: Here, we are going to learn about the static double nextAfter(double starts , double directions) method of Math Class with its syntax and example.
Submitted by Preeti Jain, on September 07, 2019
Math Class static double nextAfter(double starts , double directions)
- This method is available in java.lang package.
- This method is used to return the double floating-point number adjacent to the first parameter (starts) in the direction of the second parameter (directions).
- Let suppose both arguments passed in the method are equivalent so in that case the second parameter is returned.
- This is a static method, so it is accessible with the class name too.
- The return type of this method is double, it returns the double floating-point number adjacent to start in the direction of the second argument.
- In this method, we pass two parameters of double type so the first parameter represents the initial or starting floating-point value and the second parameter represents the value denoting which of the given first parameter neighbor (Starts neighbor) or start is returned.
- This method does not throw any exception.
Syntax:
public static double nextAfter(double starts , double directions){
}
Parameter(s):
- starts – represents the initial or starting floating-point value.
- directions – represents the value denoting which of the given first parameter neighbor (starts neighbor).
Return value:
The return type of this method is double, it returns the double floating-point number adjacent to the first parameter (starts) in the direction of second parameter (directions).
Note:
- If we pass "NaN" (Not a Number), it returns the same i.e. "NaN".
- If we pass the same value in both of the parameters, it returns the same value.
- If we pass "Double.MIN_VALUE" as the first parameter and second parameter holds another value, it returns smaller value i.e. the same value is with the same sign as the first parameter.
- If we pass infinity as first parameter and second parameter holds another value, it returns the "Double.MAX_VALUE" with the same sign as the first parameter.
- If we pass "Double.MAX_VALUE" as the first parameter and second parameter holds another value, it returns the largest value with the same sign as the first parameter.
Java program to demonstrate example of nextAfter(double starts , double directions) method
// Java program to demonstrate the example of
// nextAfter(double starts , double directions) method of Math Class.
public class NextAfterDoubleTypeMethod {
public static void main(String[] args) {
// declaring the variables
double d1 = -2.6;
double d2 = 0.0;
double d3 = -0.6;
double d4 = 7.0 / 0.0;
// displaying the values
System.out.println("d1: " + d1);
System.out.println("d2: " + d2);
System.out.println("d3: " + d3);
System.out.println("d4: " + d4);
// Here , we will get (-2.5 (approx.)) because we are passing
// parameter whose value is (-2.6,0.0)
System.out.println("Math.nextAfter(d1,d2):" + Math.nextAfter(d1, d2));
// Here , we will get (2.6) and we are passing parameter
// whose value is (0.0,-2.6)
System.out.println("Math.nextAfter(d2,d1):" + Math.nextAfter(d2, d1));
// Here , we will get (Double.MAX_VALUE) and we are passing parameter
// whose value is (7.0/0.0,0.0)
System.out.println("Math.nextAfter(d4,d2):" + Math.nextAfter(d4, d2));
// Here , we will get (largest value) and we are passing parameter
// whose value is (0.0,7.0/0.0)
System.out.println("Math. nextAfter(d2,d4):" + Math.nextAfter(d2, d4));
}
}
Output
E:\Programs>javac NextAfterDoubleTypeMethod.java
E:\Programs>java NextAfterDoubleTypeMethod
d1: -2.6
d2: 0.0
d3: -0.6
d4: Infinity
Math.nextAfter(d1,d2):-2.5999999999999996
Math.nextAfter(d2,d1):-4.9E-324
Math.nextAfter(d4,d2):1.7976931348623157E308
Math. nextAfter(d2,d4):4.9E-324