Example 1: Java Program to Convert long to int using Typecasting
class Main {
public static void main(String[] args) {
// create long variables
long a = 2322331L;
long b = 52341241L;
// convert long into int
// using typecasting
int c = (int)a;
int d = (int)b;
System.out.println(c); // 2322331
System.out.println(d); // 52341241
}
}
In the above example, we have long
type variables a and b. Notice the lines,
int c = (int)a;
Here, the higher data type long
is converted into the lower data type int
. Hence, this is called narrowing typecasting. To learn more, visit Java Typecasting.
This process works fine when the value of the long
variable is less than or equal to the maximum value of int
(2147483647). However, if the value of the long
variable is greater than the maximum int
value, then there will be a loss in data.
Example 2: long to int conversion using toIntExact()
We can also use the toIntExact()
method of the Math
class to convert the long
value into an int
.
class Main {
public static void main(String[] args) {
// create long variable
long value1 = 52336L;
long value2 = -445636L;
// change long to int
int num1 = Math.toIntExact(value1);
int num2 = Math.toIntExact(value2);
// print the int value
System.out.println(num1); // 52336
System.out.println(num2); // -445636
}
}
Here, the Math.toIntExact(value1)
method converts the long
variable value1 into int
and returns it.
The toIntExact()
method throws an exception if the returned int
value is not within the range of the int
data type. That is,
// value out of range of int
long value = 32147483648L
// throws the integer overflow exception
int num = Math.toIntExact(value);
To learn more on toIntExact()
method, visit Java Math.toIntExact().
Example 3: Convert object of the Long class to int
In Java, we can also convert the object of wrapper class Long
into an int
. For this, we can use the intValue()
method. For, example,
class Main {
public static void main(String[] args) {
// create an object of Long class
Long obj = 52341241L;
// convert object of Long into int
// using intValue()
int a = obj.intValue();
System.out.println(a); // 52341241
}
}
Here, we have created an object of the Long
class named obj. We then used the intValue()
method to convert the object into int
type.
To learn more about wrapper class, visit the Java Wrapper Class.