Tässä ohjelmassa opitaan muuttamaan pitkä muuttuja kokonaisluvuksi (int) Javassa.
Tämän esimerkin ymmärtämiseksi sinulla on oltava tieto seuraavista Java-ohjelmointiaiheista:
- Java-tietotyypit (primitiivinen)
Esimerkki 1: Java-ohjelma muunnettavaksi pitkäksi int-kirjaimeksi käyttämällä tyypinvaihtoa
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 ) )
Yllä olevassa esimerkissä meillä on long
tyyppimuuttujia a ja b. Huomaa viivat,
int c = (int)a;
Tässä korkeampi tietotyyppi long
muunnetaan alemmaksi tietotyypiksi int
. Tästä syystä tätä kutsutaan kapealaatuisen kirjoitusvirheen kaventamiseksi . Lisätietoja on Java Typecasting -sivulla.
Tämä prosessi toimii hyvin, kun long
muuttujan arvo on pienempi tai yhtä suuri kuin int
(2147483647) suurin arvo . Jos long
muuttujan arvo on kuitenkin suurempi kuin maksimiarvo int
, datassa menetetään.
Esimerkki 2: Pitkästä int-muunnos käyttämällä toIntExact ()
Voimme myös käyttää luokan toIntExact()
menetelmää arvon muuntamiseksi arvoksi .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 ) )
Tällöin Math.toIntExact(value1)
menetelmä muuntaa long
muuttujan arvon1 int
ja palauttaa sen.
toIntExact()
Menetelmä heittää poikkeus, jos palautettu int
arvo ei ole alueella, että int
tietojen tyyppi. Tuo on,
// value out of range of int long value = 32147483648L // throws the integer overflow exception int num = Math.toIntExact(value);
Lisätietoja toIntExact()
menetelmästä on Java Math.toIntExact () -sivulla.
Esimerkki 3: Muunna Long-luokan objekti int: ksi
Java, voimme myös muuttaa kohde kääreen luokan Long
osaksi int
. Tätä varten voimme käyttää intValue()
menetelmää. Esimerkiksi,
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 ) )
Tässä olemme luoneet objektin, jonka Long
nimi on obj. Sitten käytimme intValue()
menetelmää objektin muuntamiseksi int
tyypiksi.
Lisätietoja pakkausluokasta on Java Wrapper -luokassa.