Thursday, July 4, 2024
HomeLanguagesJavaStrictMath toIntExact() Method in Java with Examples

StrictMath toIntExact() Method in Java with Examples

The java.lang.StrictMath.toIntExact() is an inbuilt method in Java is used to return the value of the long argument. If the result overflows an int it will throw an exception. Object creation is not mandatory as toIntExact(long num) is static.

Syntax:

public static int toIntExact(long num)

Parameters: The method accepts one parameter num of long type whose int value is returned.

Return Value: The method returns the argument as an int.

Exception: If the argument overflows an int it throws ArithmeticException.

Examples:

Input: num = 2727l
Output: 2727

Input: num = -86262l
Output: -86262

Below programs illustrate the java.lang.StrictMath.toIntExact() method:

Program 1:




// Java program to demonstrate working
// of java.lang.StrictMath.toIntExact() method
  
import java.lang.StrictMath;
  
class Geeks {
  
    // driver code
    public static void main(String args[])
    {
  
        // Get the long value
        // whose IntExact value is needed
        long num = 266526l;
  
        // Get the IntExact value
        // using toIntExact() method
        int intvalue = StrictMath.toIntExact(num);
  
        // Print the IntExact value
        System.out.print("IntExact value of "
                         + num + " = " + intvalue);
    }
}


Output:

IntExact value of 266526 = 266526

Program 2:




// Java program to demonstrate working
// of java.lang.StrictMath.toIntExact() method
  
import java.lang.StrictMath;
  
class Geeks {
  
    // driver code
    public static void main(String args[])
    {
  
        // Get the long value
        // whose IntExact value is needed
        long num = -7226526l;
  
        // Get the IntExact value
        // using toIntExact() method
        int intvalue = StrictMath.toIntExact(num);
  
        // Print the IntExact value
        System.out.print("IntExact value of "
                         + num + " = " + intvalue);
    }
}


Output:

IntExact value of -7226526 = -7226526

Program 3: To demonstrate ArithmeticException




// Java program to demonstrate working
// of java.lang.StrictMath.toIntExact() method
  
import java.lang.StrictMath;
  
class Geeks {
  
    // driver code
    public static void main(String args[])
    {
  
        try {
            // Get the long value
            // whose IntExact value is needed
            long num = 654456645546l;
  
            System.out.println("Trying to get "
                               + "IntExact value of: "
                               + num);
  
            // Get the IntExact value
            // using toIntExact() method
            int intvalue = StrictMath.toIntExact(num);
  
            // Print the IntExact value
            System.out.print("IntExact value of "
                             + num + " = " + intvalue);
        }
        catch (Exception e) {
            System.out.println("Exception thrown: " + e);
        }
    }
}


Output:

Trying to get IntExact value of: 654456645546
Exception thrown: java.lang.ArithmeticException: integer overflow

Nokonwaba Nkukhwana
Experience as a skilled Java developer and proven expertise in using tools and technical developments to drive improvements throughout a entire software development life cycle. I have extensive industry and full life cycle experience in a java based environment, along with exceptional analytical, design and problem solving capabilities combined with excellent communication skills and ability to work alongside teams to define and refine new functionality. Currently working in springboot projects(microservices). Considering the fact that change is good, I am always keen to new challenges and growth to sharpen my skills.
RELATED ARTICLES

LEAVE A REPLY

Please enter your comment!
Please enter your name here

Most Popular

Recent Comments