BeginnersBook

  • Home
  • Java
    • Java OOPs
    • Java Collections
    • Java Examples
  • C
    • C Examples
  • C++
    • C++ Examples
  • DBMS
  • Computer Network
  • Python
    • Python Examples
  • More…
    • jQuery
    • Kotlin
    • WordPress
    • SEO
    • JSON
    • JSP
    • JSTL
    • Servlet
    • MongoDB
    • XML
    • Perl

Java Math Class

By Chaitanya Singh | Filed Under: java

Java Math class provides several useful methods that can be useful for performing various mathematical calculations in Java. It includes basic arithmetic, logarithmic and trigonometric methods. In this guide, we will discuss all the methods of Math class with examples.

Note: All the methods of java math class are provided in the list at the bottom of this post after the following examples.

Example 1: max(), min() and pow() Methods

public class JavaExample
{
  public static void main(String[] args)
  {
    double a = 5;
    double b = 3;
    System.out.println("Values of a and b are: "+a+", "+b);
    // Maximum of two numbers
    System.out.println("Maximum Number between a and b: " +Math.max(a, b));
    // Minimum of two numbers
    System.out.println("Minimum Number between a and b: " +Math.min(a, b));
    // a to the power b: 5^3 = 125
    System.out.println("a to be power b: " + Math.pow(a, b));
  }
}

Output:

Java Math max, min and pow example output

Example 2: addExact(), multiplyExact() and subtractExact() Methods

public class JavaExample
{
  public static void main(String[] args)
  {
    int a = 10;
    int b = 2;
    System.out.println("Values of a and b are: "+a+", "+b);
    System.out.println("a+b: " +Math.addExact(a, b));
    System.out.println("a*b: " +Math.multiplyExact(a, b));
    System.out.println("a-b: " +Math.subtractExact(a, b));
  }
}

Output:

Java Math addExact, multiplyExact and subtractExact Output

Example 3: incrementExact(), decrementExact(), negateExact() and toIntExact() Methods

public class JavaExample
{
  public static void main(String[] args)
  {
    int a = 10;
    long b = 20;
    System.out.println("Values of a and b: "+a+", "+b);
    System.out.println("a+1: " +Math.incrementExact(a));
    System.out.println("a-1: " +Math.decrementExact(a));
    //changes the sign
    System.out.println("-a: " +Math.negateExact(a));
    //converts long to int
    System.out.println("b as int: " +Math.toIntExact(b));
  }
}

Output:

Output of incrementExact, decrementExact, negateExact and toIntExact

Example 4: sqrt(), cbrt() and random() Methods

public class JavaExample
{
  public static void main(String[] args)
  {
    int a = 25;
    int b = 27;
    System.out.println("Value of a and b: "+a+", "+b);
    System.out.println("Square root of a: "+Math.sqrt(a));
    System.out.println("Cube root of b: "+Math.cbrt(b));
    System.out.println("Random number between 1 and 100: "+
            Math.random()*100);
  }
}

Output:

Java Math sqrt, cbrt and random example output

Example 5: ceil(), floor() and round() methods

public class JavaExample
{
  public static void main(String[] args)
  {
    double a = 9.99;
    System.out.println("Values of a: "+a);
    System.out.println("Ceil of a: " + Math.ceil(a));
    System.out.println("Floor of a: " + Math.floor(a));
    System.out.println("Round of a: " + Math.round(a));
  }
}

Output:

ceil, floor and round example output

Example 6: Java Math Logarithmic Methods

public class JavaExample
{
  public static void main(String[] args)
  {
    double a = 10;
    System.out.println("Values of a: "+a);
    // natural logarithm of a
    System.out.println("Natural Logarithm of a is: " + Math.log(a));
    // base 10 logarithm of a
    System.out.println("Base 10 Logarithm of a is: " + Math.log10(a));
    // e to the power of a: e^a where e approx. value 2.71828
    System.out.println("exp of a is: " +Math.exp(a));
  }
}

Output:

log, log10, exp methods in Math class

Example 7: Java Math Class Trigonometric Methods

public class JavaExample
{
  public static void main(String[] args)
  {
    double num = 45;
    System.out.println("Value of variable num is: "+num);

    System.out.println("Radian Value of num: "+Math.toRadians(num));
    System.out.println("Sine value of num: "+Math.sin(num));
    System.out.println("Cosine value of num: " +Math.cos(num));
    System.out.println("Tangent value of num: " +Math.tan(num));
    System.out.println("Arc sine value of num: " +Math.asin(num));
    System.out.println("Arc cosine value of num: " +Math.acos(num));
    System.out.println("Arc tangent of num: " +Math.atan(num));
    System.out.println("Hyperbolic Sine of num: " +Math.sinh(num));
    System.out.println("Hyperbolic Cosine of num: " +Math.cosh(num));
    System.out.println("Hyperbolic Tangent of num: " +Math.tanh(num));
  }
}

Output:

Java Math class trigonometric methods example output

Java Math Class Methods List

1. Basic Arithmetic Methods

MethodDescription
Math.random()Returns a random positive double value between 0.0 and 1.0
Math.max()Returns the greater value between the two values passed as arguments.
Math.min()Returns the smaller value between the two values passed as arguments.
Math.sqrt()Returns square root of the given value. The result is a positive rounded double value.
Math.pow()Returns the value of first argument raised to the power of second argument.
Math.abs()Returns the absolute value of the passed argument.
Math.round()Returns the closest number to the passed argument.
Math.cbrt()Returns cube root of the given value.
Math.signum()Returns the sign of the given number.
Math.ceil()Returns the closest int value to the passed number.
Math.nextUp()Returns the floating point value nearest to the passed value in the direction of positive affinity.
Math.nextDown()Returns the floating point value nearest to the passed value in the direction of negative affinity.
Math.nextAfter()Returns the floating point value nearest to the first argument in the direction of second argument
Math.copySign()Returns the first floating point value passed as first argument with the sign of second argument.
Math.floor()Returns the nearest int value to the passed value.
Math.floorDiv()Returns largest value that is less than or equal to the quotient generated by dividing first argument with second argument.
Math.rint()Returns closest int value to the passed float value.
Math.hypot()Returns sqrt(x2 +y2) without intermediate overflow or underflow.
Math.ulp()Returns the size of an ulp of the argument. Accuracy of the floating-point Math methods is measured in terms of ulps, units in the last place.
Math.addExact()Returns the sum of its arguments.
Math.subtractExact()Returns the difference of its arguments.
Math.multiplyExact()Returns the product of its arguments.
Math.incrementExact()Returns the argument incremented by one.
Math.decrementExact()Returns the argument decremented by one.
Math.negateExact()Returns the negation of the passed argument.
Math.toIntExact()Returns the value of the long argument; throwing an exception if the value overflows an int.
Math.getExponent()Returns exponent of the argument.
Math.IEEEremainder()Returns the remainder after dividing the first argument by second argument as per the IEEE 754 standard.

2. Logarithmic Methods

MethodDescription
Math.log()Returns natural logarithmic value of the passed double argument.
Math.log10()Returns base 10 logarithmic value of the passed double argument.
Math.log1p()Returns natural logarithmic value of the sum of passed argument and 1.
Math.exp()Returns e to the power given value. Here, e is a Euler’s number and its approx. value is 2.71828
Math.expm1()Returns e to the power given value minus 1.

3. Trigonometric Methods

MethodDescription
Math.sin()Returns Sine value of the given double value.
Math.cos()Returns Cosine value of the given double value.
Math.tan()Returns Tangent value of the given double value.
Math.asin()Returns Arc sine value of the given double value.
Math.acos()Returns Arc Cosine value of the given double value.
Math.atan()Returns Arc Tangent value of the given double value.
Math.sinh()Returns Hyperbolic Sine value of the given double value.
Math.cosh()Returns Hyperbolic Cosine value of the given double value.
Math.tanh()Returns Hyperbolic Tangent value of the given double value.
Math.toDegrees()Converts given radian value to degrees.
Math.toRadians()Converts given value in degrees to radians.

Conclusion

In this guide, we have covered Java Math class with examples. You can refer beginnersbook’s java tutorial to read more such in depth guides or you can head over to the java examples section to practice programs in Java.

Reference: Java Documentation

Java Tutorial

Java Introduction

  • Java Index
  • Java Introduction
  • History of Java
  • Features of Java
  • C++ vs Java
  • JDK vs JRE vs JVM
  • JVM - Java Virtual Machine
  • First Java Program
  • Variables
  • Data Types
  • Operators

Java Flow Control

  • Java If-else
  • Java Switch-Case
  • Java For loop
  • Java while loop
  • Java do-while loop
  • Continue statement
  • break statement

Java Arrays

  • Java Arrays

OOPs Concepts

  • OOPs Concepts
  • Constructor
  • Java String
  • Static keyword
  • Inheritance
  • Types of inheritance
  • Aggregation
  • Association
  • Super Keyword
  • Method overloading
  • Method overriding
  • Overloading vs Overriding
  • Polymorphism
  • Types of polymorphism
  • Static and dynamic binding
  • Abstract class and methods
  • Interface
  • Abstract class vs interface
  • Encapsulation
  • Packages
  • Access modifiers
  • Garbage Collection
  • Inner classes
  • Static import
  • Static constructor

Java Exception Handling

  • Exception handling
  • Java try-catch
  • Java throw
  • Java throws
  • Checked and Unchecked Exceptions
  • Jav try catch finally
  • Exception Examples
  • Exception Propagation

Collections Framework

  • Collections in Java
  • Java ArrayList
  • Java LinkedList
  • Java Vector
  • Java HashSet
  • Java LinkedHashSet
  • Java TreeSet
  • Java HashMap
  • Java TreeMap
  • Java LinkedHashMap
  • Java Queue
  • Java PriorityQueue
  • Java Deque
  • Comparable interface
  • Comparator interface
  • Collections Interview Questions

MORE ...

  • Java Scanner Class
  • Java 8 Features
  • Java 9 Features
  • Java Conversion
  • Java Date
  • Java Multithreading
  • Java I/O
  • Java Serialization
  • Java Regex
  • Java AWT
  • Java Swing
  • Java Enum
  • Java Annotations
  • Java main method
  • Java Interview Q

Copyright © 2012 – 2022 BeginnersBook . Privacy Policy . Sitemap