В тази програма ще се научим да преобразуваме дългата променлива в цяло число (int) в Java.
За да разберете този пример, трябва да имате познанията по следните теми за програмиране на Java:
- Типове данни на Java (примитивни)
Пример 1: Java програма за конвертиране на long в int с използване на 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 ) )
В горния пример имаме long
променливи тип a и b. Забележете редовете,
int c = (int)a;
Тук по-високият тип данни long
се преобразува в по-ниския тип данни int
. Следователно, това се нарича стесняване на типово излъчване . За да научите повече, посетете Java Typecasting.
Този процес работи добре, когато стойността на long
променливата е по-малка или равна на максималната стойност на int
(2147483647). Ако обаче стойността на long
променливата е по-голяма от максималната int
стойност, тогава ще има загуба на данни.
Пример 2: преобразуване long to int с помощта на toIntExact ()
Можем също да използваме toIntExact()
метода на Math
класа, за да преобразуваме long
стойността в 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 ) )
Тук Math.toIntExact(value1)
методът преобразува long
променливата value1 в int
и я връща.
В toIntExact()
метода хвърля изключение, ако се върна int
стойност не е в границите на int
вида данни. Това е,
// value out of range of int long value = 32147483648L // throws the integer overflow exception int num = Math.toIntExact(value);
За да научите повече за toIntExact()
метода, посетете Java Math.toIntExact ().
Пример 3: Преобразуване на обект от клас Long в int
В Java също можем да преобразуваме обекта от клас на обвивка Long
в int
. За това можем да използваме intValue()
метода. Например,
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 ) )
Тук създадохме обект от Long
класа, наречен obj. След това използвахме intValue()
метода, за да преобразуваме обекта в int
тип.
За да научите повече за класа на обвивка, посетете Java Wrapper Class.