Ebben a programban megtanuljuk átalakítani a hosszú változót egész számra (int) a Java-ban.
A példa megértéséhez ismernie kell a következő Java programozási témákat:
- Java adattípusok (primitív)
1. példa: Java program hosszú konvertálására int-be a Typecasting használatával
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 ) )
A fenti példában vannak long
a és b típusú változóink. Figyelje meg a vonalakat,
int c = (int)a;
Itt a magasabb adattípus long
átalakul alacsonyabb adattípusra int
. Ezért ezt nevezzük a tipizálás szűkítésének . További információért keresse fel a Java Typecasting oldalt.
Ez a folyamat akkor működik jól, ha a long
változó értéke kisebb vagy egyenlő a int
(2147483647) maximális értékével . Ha azonban a long
változó értéke nagyobb, mint a maximális int
érték, akkor adatvesztés következik be.
2. példa: hosszú-int átalakítás toIntExact () használatával
Használhatjuk az osztály toIntExact()
módszerét is Math
az long
érték konvertálására an-vá 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 ) )
Itt a Math.toIntExact(value1)
módszer átalakítja long
az1 érték változót int
és visszaadja.
A toIntExact()
módszer kivételt vet, ha a visszatérő int
érték nem esik az int
adattípus tartományába . Vagyis
// value out of range of int long value = 32147483648L // throws the integer overflow exception int num = Math.toIntExact(value);
Ha többet szeretne megtudni a toIntExact()
módszerről, látogasson el a Java Math.toIntExact () oldalra.
3. példa: A Long osztály objektumának konvertálása int-re
A Java, azt is átalakítani az objektum wrapper osztályt Long
egy int
. Ehhez használhatjuk a intValue()
módszert. Például,
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 ) )
Itt létrehoztuk az Long
obj nevű objektumot . Ezután a intValue()
módszert használtuk az objektum típusgá alakítására int
.
Ha többet szeretne megtudni a burkoló osztályról, látogasson el a Java Wrapper osztályra.