Šioje programoje išmoksime ilgąjį kintamąjį paversti sveikuoju skaičiumi (int) „Java“.
Norėdami suprasti šį pavyzdį, turite žinoti šias Java programavimo temas:
- „Java“ duomenų tipai (primityvūs)
1 pavyzdys: „Java“ programa, norint konvertuoti ilgą į „int“ naudojant „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 ) )
Ankstesniame pavyzdyje mes turime long
tipo kintamuosius a ir b. Atkreipkite dėmesį į eilutes,
int c = (int)a;
Čia didesnis duomenų tipas long
konvertuojamas į mažesnį duomenų tipą int
. Vadinasi, tai vadinama susiaurėjančia rašyba . Norėdami sužinoti daugiau, apsilankykite „Java Typecasting“.
Šis procesas veikia gerai, kai long
kintamojo vertė yra mažesnė arba lygi maksimaliai vertei int
(2147483647). Tačiau jei long
kintamojo vertė yra didesnė už didžiausią int
vertę, tada duomenys bus prarasti.
2 pavyzdys: „long to int“ konvertavimas naudojant toIntExact ()
Mes taip pat galime naudoti klasės toIntExact()
metodą reikšmei paversti į .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 ) )
Čia Math.toIntExact(value1)
metodas konvertuoja long
kintamąją reikšmę1 į int
ir grąžina.
toIntExact()
Metodas metimų išimtį, jei grįžo int
vertė yra ne per diapazono int
duomenų tipo. Tai yra,
// value out of range of int long value = 32147483648L // throws the integer overflow exception int num = Math.toIntExact(value);
Norėdami sužinoti daugiau apie toIntExact()
metodą, apsilankykite „Java Math.toIntExact“ ().
3 pavyzdys: Konvertuokite ilgosios klasės objektą į int
„Java“ paketo klasės objektą taip pat galime konvertuoti Long
į int
. Tam galime naudoti intValue()
metodą. Pavyzdžiui,
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 ) )
Čia mes sukūrėme objektą, Long
pavadintą obj. Tada mes panaudojome intValue()
metodą, kad paverstume objektą int
tipu.
Norėdami sužinoti daugiau apie įvyniojimo klasę, apsilankykite „Java Wrapper Class“.