×

Java Math with Methods and Examples

Java Math class contains various methods for performing math operations like min(), max(), avg() and various trigonometric functions like sin(), cos(), tan() etc.

Methods:

The java.lang.Math class contains various methods for performing basic numeric operations. These methods are as follows:

Math.abs()It returns the absolute value for the specified argument.
Math.acos()It is used to return the arc cosine value for the specified long value.
Math.addExact()It returns the sum of the two arguments, throwing an exception if the result overflows a long or an int.
Math.asin()It returns the arc sine of the specified value.
Math.atan ()It returns the arc tangent of the specified value.
Math.atan2()It returns an angle theta from the conversion of rectangular coordinates to polar coordinates.
Math.cbrt()It returns the cube root of the specified value.
Math.ceil()It returns the smallest double value that is greater or equal to the argument and is equal to the mathematical integer.
Math.copysign()It returns the first floating-point value with the sign of the second floating-point value.
Math.cos()It returns trigonometric cosine for the given angle.
Math.cosh()It returns the hyperbolic cosine of a double value.
Math.decrementExact()It returns an argument decremented by 1, throwing an exception if the result overflows a long or an int.
Math.exp()It returns e (Euler’s number) raised to the power of a double value.
Math.expm1()It returns ex-1 value.
Math.floor()It returns the largest double value that is less or equal to the argument and is equal to the mathematical integer.
Math.floorDiv()It returns the largest value that is less or equal to the algebraic quotient.
Math.floorMod()It returns the floor modulus of the given arguments.
Math.fma()It returns the nearest float value of the product of first two arguments summed with the third argument.
Math.getExponent()It returns the unbiased exponent used in the representation of a double or float value.
Math.hypot()It returns the square root of x2+y2 without intermediate overflow or underflow.
Math.IEEEremainder()It is used to compute the remainder operation on two arguments as prescribed by the IEEE 754 standard.
Math.incrementExact()It returns an argument incremented by 1, throwing an exception if the result overflows a long or an int.
Math.log()It returns the natural logarithm for the given double value.
Math.log10()It returns the base 10 logarithm for the given double value.
Math.log1p()It returns the natural logarithm of the sum of the specified argument and 1.
Math.max()It returns the maximum or largest value of two values.
Math.min()It returns the minimum of two values.
Math.multiplyExact()It returns the product of the given argument, throwing an exception if the result overflows an int or long.
Math.multiplyFull()It returns the exact mathematical product of the given argument.
Math.multiplyHigh()It returns the long value for the 64 bits of the 128-bit product of two 64-bit factors.
Math.negateExact()It returns the negation of the argument, throwing an exception is the result overflows an int or long.
Math.nextAfter()It returns the floating-point value which is adjacent to the first argument in the direction of the second argument.
Math.nextDown()It returns the floating-point value which is adjacent to the given float or double value in the direction of negative infinity.
Math.nextUp()It returns the floating-point value which is adjacent to the given float or double value in the direction of positive infinity.
Math.pow()It is used to return the value of first argument raised to the power of second argument.
Math.random()It returns a positive double value which is greater or equal to 0.0 and less than 1.0.
Math.rint()It returns a double value that is nearest to the argument and is equal to the mathematical integer.
Math.round()It is used to round the argument to its nearest value.
Math.scalb()It returns a single correctly rounded floating-point multiply to a member of float or double value set.
Math.signum()It is used to find the sign of the specified float or double value.
Math.sin()It returns the trigonometric sine of an angle.
Math.sinh()It is used to return the hyperbolic sine for the specified double value.
Math.sqrt()It returns a positive square root of a double value.
Math.subtractExact()It is used to return the difference of given int or float arguments, throwing an exception if the result overflows a long or an int.
Math.tan()It returns trigonometric tangent for the specified angle.
Math.tanh()It returns a hyperbolic tangent for a double value.
Math.toDegrees()It is used to convert a radians angle to equivalent angle which is measured in degrees.
Math.toIntExact()It is used to return the value of long argument, throwing an exception if the result overflows.
Math.toRadians()It converts the specified degrees angle to an equivalent angle measured in radians.
Math.ulp()It returns the size of an ulp of the given float or double argument.

Example 1:

public class JavaMathExample1 {
    static int i=1;
    public static void main(String[] args) {
        double x = 42;
        double y = 4;
        // return absolute value
        System.out.println(i++ +". Absolute value of " + x + " = " + Math.abs(x));
        // return the square root of y
        System.out.println(i++ +". Square root of "+ y +" = "  + Math.sqrt(y));
        //returns 42 power of 4 i.e. 42*42*42*42
        System.out.println(i++ +". Power of "+ x +" and "+ y +" = "  + Math.pow(x, y));
        // return the logarithm of given value
        System.out.println(i++ +". Logarithm of "+ x +" = "  + Math.log(x));
        System.out.println(i++ +". Logarithm of "+ y +" = "  + Math.log(y));
        // return the logarithm of given value when base is 10
        System.out.println(i++ +". log10 of "+ x +" = "  + Math.log10(x));
        System.out.println(i++ +". log10 of "+ y +" = "  + Math.log10(y));
        // return the log of x + 1
        System.out.println(i++ +". log1p of "+ x +" = " +Math.log1p(x));
        // return a exponential power
        System.out.println(i++ +". exp of "+ x +" = "  +Math.exp(x));
        // return (x power of 2)-1
        System.out.println(i +". expm1 of "+ x +" = "  +Math.expm1(x));
    }
}

Output:

1.Absolute value of 42.0 = 42.0
2.Square root of 4.0 = 2.0
3.Power of 42.0 and 4.0 = 3111696.0
4.Logarithm of 42.0 = 3.7376696182833684
4.Logarithm of 4.0 = 1.3862943611198906
5.log10 of 42.0 = 1.6232492903979006
6.log10 of 4.0 = 0.6020599913279624
7.log1p of 42.0 = 3.7612001156935624
8.exp of 42.0 = 1.73927494152050099E18
9.expm1 of 42.0 = 1.73927494152050099E18

Example 2:

public class JavaMathExample2 {
    static int i=1;
    public static void main(String[] args) {
        double x = 0;
        System.out.println(”Trigonometric values of "+x+" are as follows : ");
        // return the trigonometric sine
        System.out.println(i++ +". Sine value of "+ x +" = " +Math.sin(x));
        // return the trigonometric cosine
        System.out.println(i++ +". Cosine value of "+ x +" = "  +Math.cos(x));
        // return the trigonometric tangent value
        System.out.println(i++ +". Tangent value of "+ x +" = "  +Math.tan(x));
        // return the trigonometric arc sine value
        System.out.println(i++ +". Sine value of "+ x +" = "  +Math.asin(x));
        // return the trigonometric arc cosine value
        System.out.println(i++ +". Cosine value of "+ x +" = "  +Math.acos(x));
        // return the trigonometric arc tangent value
        System.out.println(i++ +". Tangent value of "+ x +" = "  +Math.atan(x));
        // return the hyperbolic sine value
        System.out.println(i++ +". Sine value of "+ x +" = "  +Math.sinh(x));
        // return the hyperbolic cosine value
        System.out.println(i++ +". Cosine value of "+x+" = " +Math.cosh(x));
        // return the hyperbolic tangent value
        System.out.println(i++ +". Sine value of "+ x +" = "  +Math.tan(x));
    }
}

Output:

Trigonometric values of 0.0 are as follows :


1. Sine value of 0.0 = 0.0
2. Cosine value of 0.0 = 1.0
3. Tangent value of 0.0 = 0.0
4. Sine value of 0.0 = 0.0
5. Cosine value of 0.0 = 1.5707963267948966
6. Tangent value of 0.0 = 0.0
7. Sine value of 0.0 = 0.0
8. Cosine value of 0.0 = 1.0
9. Sine value of 0.0 = 0.0

Related Topics

Java Swings

Swing is a Java Foundation Class library and an extension to the Abstract Window Toolkit (AWT) (JFC).As compared to AWT, Swing has significantly better functionality, new components, increased component features,...

9 minutes read.

Dutch National Flag Problem in Java

Dutch National Flag (DNF) is a programming issue that Edsger Dijkstra put up. The white, red, and blue hues make up the Dutch flag. The goal is to haphazardly set...

6 minutes read.

Map of Map in Java

The map is now a Java interface for mapping keys to values. It is frequently necessary to use Map of Map (nested Map). Nested Maps are useful in various situations, including...

3 minutes read.

How to convert list to String in Java

Sometimes, we need to transform a listing of characters into a string. A string is a chain of characters, so we will make a string from an individual array without...

4 minutes read.

Java Get File Size

There are three ways to get the file size in Java. Using Java InputOutput Using NewInputOutput Library Files.size() Method FileChannel.size() Method Using Apache Commons InputOutput Using Java InputOutput: The Java IO package offers the classes that deal...

5 minutes read.

Loose Coupling in Java

Loosely coupling mechanism in java means one reference of a variable capable of holding multiple implementation class memory is called loosely coupling. Or in other words, one interface reference variable...

3 minutes read.

Deque in Java

Deque in java collections with Example Deque is short for “double-ended queue.” It is a linear collection that extends the Queue interface and supports insertion and deletion of the element at both the...

3 minutes read.

Java Thread Lifecycle: States and Stages

Multithreading Multithreading is one of the most important features in object-oriented programming, and this multithreading can be implemented by various object-oriented programming languages like Java, Python, and C++. A multithreaded process...

7 minutes read.

Pyramid Program in Java

Pyramid Program in Java In the previous section, we have discussed about the number pattern programs in Java. The logic for the number pattern and pyramid pattern is the same except...

2 minutes read.

Program to Find Square Root of a Number Without sqrt Method in Java

The Java Math class sqrt () function can be used to determine the square root of a number. In this section, we'll write a Java program to find a number's...

3 minutes read.

Java Integer numberOfTrailingZeros() method

The numberOfTrailingZeros()  method of Java Integer class returns the total number of zero bits following the lowest-order one-bit in the 2’s complement binary representation of the specified int value. Syntax public static...

1 minute read.

Java StringReader Class

StreamReader Class technique enables character reading from a string. The java.io package contains this class. A string serves as a source in the character stream. While the Stream class is...

4 minutes read.

Java String trim() method

Java String trim() method returns String after eliminating leading and trailing spaces. Note:- Java String trim() method doesn't trim or omit middle spaces. Syntax: public String trim() Returns: It returns string with omitted leading and...

2 minutes read.

Java String replace() method

Java String replace() method returns new String by replacing old characters with new characters or old CharSequence to new CharSequence. Syntax: public String replace(char oldChar, char newChar) public String replace(CharSequence target, CharSequence replacement) Parameters: oldChar...

2 minutes read.

Java 9 Interface Private Method

Java 9 provides us the facility to include private methods inside the java interface. In java 8 and earlier versions, we are supposed to use only constant variables and abstract...

3 minutes read.

Bin Packing Problem Java

Assigning some items with known weights to bins with consistent capacities is necessary for the bin packing problem. The goal is to use the smallest possible boxes while ensuring everything is put...

6 minutes read.

How to Convert Decimal to Binary in Java

How to Convert Decimal to Binary in Java There are two methods to convert Decimal to Binary. Using toBinaryString() method Using user-defined logic Using Integer.toBinaryString() The toBinaryString() is a static method of Integer...

2 minutes read.

How to write basic Java Programs

Java Basic Programs In this section, we will learn how to write basic Java programs. But first we need to take care of the following requirement list. To execute a Java program,...

4 minutes read.

XOR Binary Operator in Java

One of the various Bitwise operators in Java is ava XOR. If two boolean operands are given, the XOR (also known as exclusive OR) returns true. When both of the...

4 minutes read.

Byte to Hex in Java

Java exclusively uses byte data types to store in a byte array, which is an array. Each component of a byte array has a default value of 0. Hex String -...

3 minutes read.