Java acos 函数

Java acos 函数是 Math 函数之一,用于计算指定表达式的三角反余弦值。反余弦也称为余弦的反函数。

Java 编程语言中 Math.acos 的基本语法如下所示。

static double acos(double number); //Return Type is Double

// In order to use in program: 
Math.acos(double number);

Number:它可以是 double 值或您要查找反余弦值的有效数值表达式。

  • 如果 number 参数是正数或负数,acos 函数将返回反余弦值。
  • 如果 number 参数不是数字或超出 -1 和 1 的范围,则函数将返回 NaN。

Java math acos 函数示例

在这里,我们使用 Math.acos 函数来查找正数和负数的三角反余弦值并显示输出。请参考 Java cos 函数文章以了解余弦函数。

package TrigonometricFunctions;

public class AcosMethod {
	public static void main(String[] args) {
		double x = Math.acos(1.56 - 3.65 + 1.48);
		System.out.println("Arc Cosine value =  " + x);	
		
		System.out.println("\nArc Cosine value of Positive Value = " + Math.acos(0.65));
		System.out.println("Arc Cosine value of Positive Value =  " + Math.acos(1.58));
		
		System.out.println("\nArc Cosine value of Negative Value =  " + Math.acos(-0.75));
		System.out.println("Arc Cosine value of Negative Value =  " + Math.acos(-2.50));

		double m = Math.toRadians(45);
		System.out.println("\nArc Cosine value of Radiant Value = " + Math.acos(m));
	}
}
Java acos Function 1

首先,我们声明了一个 double 类型的变量 x,并直接对表达式使用了该函数。在这里,我们使用 System.out.println 语句将反余弦结果作为输出打印。请参考 Java cos 函数文章以了解余弦函数。

double x = Math.acos(1.56 - 3.65 + 1.48);
System.out.println("Arc Cosine value =  " + x);

接下来,我们直接在正 double 值上使用了 Java Math.acos 函数。如果观察上面的截图,Math.acos(1.58) 的输出是 NaN,因为参数值大于 1。

System.out.println("\nArc Cosine value of Positive Value = " + Math.acos(0.65));
System.out.println("Arc Cosine value of Positive Value =  " + Math.acos(1.58));

在这里,我们直接在负 double 值上使用了该函数。如果观察上面的截图,Math.asin(-2.50) 的输出是 NaN,因为参数值不在 -1 和 1 的范围内。

System.out.println("\nArc Cosine value of Negative Value =  " + Math.acos(-0.75));
System.out.println("Arc Cosine value of Negative Value =  " + Math.acos(-2.50));

接下来,我们声明了一个 double 类型的变量并赋值。然后,我们使用 Math.toRadians 函数将 45 转换为等效的弧度。然后 System.out.println 语句将结果作为输出打印。

double m = Math.toRadians(45);
System.out.println("\nArc Cosine value of Radiant Value = " + Math.acos(m));

Java math acos 数组示例

在此 acos 程序中,我们查找批量数据的反余弦值。在这里,我们将声明一个 double 类型的数组并查找数组元素的反正余弦值。

package TrigonometricFunctions;

public class AcosMethodOnArrays {
	public static void main(String[] args) {
		
		double [] myArray = {0, 1, -1, 0.30, 0.45, 0.60, 0.75, 0.90};

		for (int i = 0; i < myArray.length; i++) {
			System.out.format("%.2f = %.4f\n", myArray[i], Math.acos(myArray[i]));
		}
	}
}
0.00 = 1.5708
1.00 = 0.0000
-1.00 = 3.1416
0.30 = 1.2661
0.45 = 1.1040
0.60 = 0.9273
0.75 = 0.7227
0.90 = 0.4510

在这里,我们使用 Java For Loop 迭代数组。在 acos For Loop 中,我们将 i 值初始化为 0。接下来,编译器将检查条件 (i < myArray.length)。

提示:myArray.length 查找 Java 数组的长度。

for (int i = 0; i < myArray.length; i++) {

在这里,我们在 System.out.format 语句中直接使用了 acos Math 函数。编译器将调用 Math.acos 方法(static double acos(double number))来查找相应的反余弦值并打印输出。

System.out.format("Arc Cosine value of Array Element %.2f = %.4f\n", myArray[i], Math.acos(myArray[i]));

注意:要查找单个项的反余弦值,请使用:Math.acos(myArray[index_position])

Java math acos ArrayList 示例

在此 Java 程序中,我们将声明一个 double 类型的 ArrayList 并查找列表元素的反余弦值。

package TrigonometricFunctions;

import java.util.ArrayList;

public class AcosMethodOnArrayList {
	public static void main(String[] args) {
		ArrayList<Double> myList = new ArrayList<Double>(5);
		myList.add(Math.PI);
		myList.add(Math.PI / 3);
		myList.add(Math.PI / 4);
		myList.add(Math.PI / 6);
		myList.add(Math.PI / 9);
		myList.add(Math.PI / 12);
		myList.add(Math.PI / 16);
		
		for (double x : myList) {
			System.out.format("Arc Cosine of %.2f =  %.4f \n", x, Math.acos(x));
		}
	}
}
Arc Cosine of 3.14 =  NaN 
Arc Cosine of 1.05 =  NaN 
Arc Cosine of 0.79 =  0.6675 
Arc Cosine of 0.52 =  1.0197 
Arc Cosine of 0.35 =  1.2142 
Arc Cosine of 0.26 =  1.3059 
AArc Cosine of 0.20 =  1.3732 

在此 acos 函数示例中,我们使用 Math.PI 常量(其值约为 3.14)声明了一个 double 类型的 ArrayList。

接下来,我们使用 For Loop 迭代 ArrayList 中的 double 值。

for (double x : myList) {

编译器将调用静态 double acos(double x) 方法来查找相应的反余弦值并打印输出。

System.out.format("Arc Cosine value of ArrayList Item %.2f =  %.4f \n", x, Math.acos(x));

如果您观察到上面的截图,

  • Math.acos (Math.PI) 的输出是 NaN。这是因为 3.14 大于 1。
  • Math.PI / 3 的输出是 NaN。这是因为 3.14 / 3 = 1.05,大于 1。