此方法在java.lang包中可用。
此方法用于在第二个参数(方向)的方向上返回与第一个参数相邻的双浮点数(起始)。
假设在方法中传递的两个参数都相等,那么在这种情况下将返回第二个参数。
这是一个静态方法,因此也可以使用类名进行访问。
此方法的返回类型为double,它返回在第二个参数方向上与start相邻的double浮点数。
在此方法中,我们传递了两个双精度类型的参数,因此第一个参数代表初始或起始浮点值,第二个参数代表表示给定的第一个参数邻居(起点邻居)或起点返回的值。
此方法不会引发任何异常。
语法:
public static double nextAfter(double starts , double directions){ }
参数:
starts –表示初始或起始浮点值。
directions –代表表示给定的第一个参数邻居(开始邻居)的值。
返回值:
此方法的返回类型为double,它在第二个参数的方向上返回与第一个参数相邻的双浮点数(开始)。
注意:
如果我们传递“ NaN”(不是数字),则返回相同的值,即“ NaN”。
如果我们在两个参数中传递相同的值,则它将返回相同的值。
如果我们将“ Double.MIN_VALUE”作为第一个参数传递,而第二个参数包含另一个值,则它将返回较小的值,即,与第一个参数相同的值带有相同的符号。
如果我们将无穷大作为第一个参数传递而第二个参数包含另一个值,则它将返回与第一个参数具有相同符号的“ Double.MAX_VALUE”。
如果我们将“ Double.MAX_VALUE”作为第一个参数传递,而第二个参数包含另一个值,则它将返回与第一个参数具有相同符号的最大值。
//Java程序演示的例子 //数学类的nextAfter(double starts,double direction)方法。 public class NextAfterDoubleTypeMethod { public static void main(String[] args) { //声明变量 double d1 = -2.6; double d2 = 0.0; double d3 = -0.6; double d4 = 7.0 / 0.0; //显示值 System.out.println("d1: " + d1); System.out.println("d2: " + d2); System.out.println("d3: " + d3); System.out.println("d4: " + d4); //在这里,我们得到(-2.5(大约)),因为我们通过 //值为(-2.6,0.0) System.out.println("Math.nextAfter(d1,d2):" + Math.nextAfter(d1, d2)); //在这里,我们将得到(2.6)并传递参数 //其值是(0.0,-2.6) System.out.println("Math.nextAfter(d2,d1):" + Math.nextAfter(d2, d1)); //在这里,我们将获得(Double.MAX_VALUE)并传递参数 //其值为(7.0 / 0.0,0.0) System.out.println("Math.nextAfter(d4,d2):" + Math.nextAfter(d4, d2)); //在这里,我们将得到(最大值),并且正在传递参数 //其值为(0.0,7.0 / 0.0) System.out.println("Math. nextAfter(d2,d4):" + Math.nextAfter(d2, d4)); } }
输出结果
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