The java.lang.Math package has useful trigonometric functions such as:
public static native double sin(double a) public static native double asin(double a).
So, if we write code:
double x = 90; double y = Math.sin(x);
We expect y to be 1.0, right? Unfortunately this is not true. In fact, we should be aware of a few points in order to successfully use trigonometric facilities of java.lang.Math package.
1. Trigonometric functions of the Math package work in radians, not degrees. pi radians=360 degrees. So, if we want to obtain the value if sin of 90 degrees, we can write:
//conversion from degree to radian static final double degToRad = Math.PI/180; double x = 90*degToRad; double y = Math.sin(x); Now, y has a value of 1.0. Similarly, if we wan to obtain the asin of 1, you would write double z=Math.asin(1); but z will contain a value is radian so , we'll do z *= 180; This will give you 90 in degrees. 2. We need write Math.sin instead of plain sin because sin, cos, tan, etc. are static functions. Java is picky and verbose. It wants the "Math.",even when there is no name clash with a sin function in some class other than Math, or some package other than java.lang. In this way, Java prevents the possibility of an eventual name clash by requiring fully qualified names for static functions like Math.sin. In fact, we should precede all static function and method invocations with the class name.
3. We need the Math.PI instead of plain PI because PI isa static constant. JDK 1.2 has added two convenience methods for degree to radian and radian to degree conversions:
public static double toDegrees(double angrad); public static double toRadians(double angdeg);
Charlie has over a decade of experience in website administration and technology management. As the site admin, he oversees all technical aspects of running a high-traffic online platform, ensuring optimal performance, security, and user experience.
Related Posts
- Solving iPhone 15, BMW Wireless Charger Dilemma
- New Flexera Software App Portal Release Adds Support for Cloud & Apple?? Mac Apps, and ROI Dashboard – Extending Enterprise App Store Leadership
- Using the Hover Effect on an HTML Element
- Cybersecurity startups await budget 2024 allocation
- AI: a double-edged sword in cybersecurity






















