Kuidas kasutada Java primitiive
Java-s on 8 primitiivset andmetüüpi, millel on kõik kindel suurus ja määratletud väärtuste vahemik. Neid kasutatakse muutujate loomiseks ja neile individuaalsete numbrite, tähtede või loogiliste väärtuste omistamiseks. 8 Java primitiivset tüüpi on boolean, byte, char, double, float, int, long ja short.
Mis on Java primitiivsed tüübid?
Nagu teised programmeerimiskeeled, on ka Javal erinevad andmetüübid. Java-s jagunevad need kahte kategooriasse. Esimene on viitetüübid, mis viitavad vabalt määratletavale objektile, nagu stringid, massiivid, klassid ja liidesed. Siis on veel Java primitiivid. Neil on kindel suurus, mis on kõikidel platvormidel sama. Neil on ka oma wrapper-klass, nad on muutumatud ja neil on kindel väärtuste vahemik. Java primitiive kasutatakse muutujate loomiseks üksikute numbrite, tähtede või loogiliste väärtuste jaoks.
Java-keeles on 8 erinevat primitiivset andmetüüpi, mis erinevad peamiselt selle poolest, milliseid väärtusi nad salvestavad. Neile kõigile on ühine see, et nad saavad salvestada ainult ühe väärtuse. Kuna mõnda neist kasutatakse sarnastes olukordades, saame Java primitiivid jagada nelja kategooriasse:
- Loogiline andmetüüp (boolean)
- Integraalne andmetüüp (byte, short, int ja long)
- Ujukomaarvuline andmetüüp (float ja double)
- Tähemärgi andmetüüp (char)
Kuna need salvestatakse otse pinu, on nende suurus eriti oluline. Seda teemat käsitletakse käesolevas juhendis edaspidi. Java primitiivsed tüübid on olulised ka seetõttu, et Java on staatiliselt tüübitav keel. Seega peate programmi loomisel juba eelnevalt määratlema muutuja andmetüübi, vastasel juhul tekivad veateated. Siin on ülevaade Java primitiivsetest tüüpidest:
| Andmetüüp | Suurus | Väärtuste vahemik | Vaikimisi väärtus | Wrapper-klass |
|---|---|---|---|---|
| boolean | 1 bit | true või false | false | java.lang.Boolean |
| bait | 8 bitti | -128 kuni 127 | 0 | java.lang.Byte |
| lühike | 16 bitti | -32768 kuni 32767 | 0 | java.lang.Short |
| int | 32 bitti | -2147483648 kuni 2147483647 | 0 | java.lang.Integer |
| pikk | 64 bitti | -9223372036854775808 kuni 9223372036854775807 | 0 | java.lang.Long |
| float | 32 bitti | kuni 7 kümnendkohta | 0,0 | java.lang.Float |
| double | 64 bitti | kuni 16 kümnendkohta | 0,0 | java.lang.Double |
| char | 16 bitti | **’\u0000’ (st 0) kuni ‘\uffff’ (vastab 65535) | ‘\u0000’ | java.lang.Character |
Kuidas kasutada Java primitiivset boole’i tüüpi
Java Boolean on tuntud ka kui tõeväärtus. See on kõige lihtsam Java primitiiv, kuna sellel on ainult kaks võimalikku väärtust: „true” või „false”. Seda kasutatakse, kui on vaja loogilist operandi, ja see on ainus loogiline andmetüüp. Väljendites tähistavad selle kaks võimalikku väärtust tavaliselt tingimust, mis on kas täidetud (true) või mitte (false). Kui Booleanile ei määra väärtust, on selle vaikimisi väärtus false. Booleani saab Java-s kombineerida Booleani operaatoritega, nagu AND ja OR. Booleanile väärtuse määramine näeb välja järgmine:
public class Main {
public static void main(String[] args) {
boolean x = true;
System.out.println(x);
}
}javaKui kasutate Java-käsku System.out.prinln väljundi algatamiseks, näeb väljund välja järgmine:
truejavabait
Bait on täisarvude andmetüüpide seas väikseim andmetüüp. Selle väärtuste vahemik on väga piiratud, nimelt -128 kuni 127. Kuid see kasutab ainult 8 bitti mälu. Tegelikult on see saanud oma nime asjaolust, et 8 bitti moodustavad ühe baidi. Kui töötate ainult väga piiratud väärtuste vahemikuga, võite baidi deklareerida järgmiselt:
public class Main {
public static void main(String[] args) {
byte x = 101;
System.out.println(x);
}
}javaVäljund näeb välja järgmine:
101javalühike
short on kaks korda suurem kui byte, mis tähendab, et see on ka üks harvem kasutatavatest Java primitiividest. Aga kui byte on liiga väike ja int liiga suur, võib short olla just see täisarvutüüp, mida otsite. Siin on, kuidas seda deklareerida:
public class Main {
public static void main(String[] args) {
short x = -27412;
System.out.println(x);
}
}javaVäljund näeb välja järgmine:
-27412javaint
int on täisarvude andmetüüpidest kõige sagedamini kasutatav. Sellel on väga suur väärtuste vahemik ja see säästab ruumi. int on kahekomplementaarne väärtus ja seda kasutatakse sageli ka muudel eesmärkidel. Siin on selle kasutamise juhised:
public class Main {
public static void main(String[] args) {
int x = 14;
int y = 3;
int z = x + y;
System.out.println(x + " + " + y + " = " + z);
}
}javaVäljund näeb välja järgmine:
14 + 3 = 17javapikk
long on int laiendus ja võib sisaldada veelgi pikemaid numbreid. int on enamikel juhtudel piisav, kuid kui soovite deklareerida long, saate seda teha järgmiselt:
public class Main {
public static void main(String[] args) {
long x = 47;
System.out.println(x);
}
}javaSiin on väljund:
47javaujuv
Ratsionaalarvude alamhulki esindamiseks on olemas kaks Java primitiivi. float on kahest ujukomaarvutüübist väiksem ja kasutab 32 bitti. See suudab kuvada kuni 7 kümnendkohta. Siiski ei ole see väga täpne ja seetõttu ei kasutata seda väga tihti. Kui otsustate seda siiski kasutada, võite selle deklareerida järgmiselt:
public class Main {
public static void main(String[] args) {
float x = 7.22f;
System.out.println(x);
}
}javaPange tähele, et numbri järele tuleb lisada väike või suur täht „f”, et arvutile märkida, et tegemist on ujukomaarvuga, mitte topeltarvuga. Täht f ei kuvata väljundis:
7.22javakaks
Teine ujukomaarvuline andmetüüp on double. See on oluliselt täpsem kui float, kuid ei anna siiski täiesti täpseid tulemusi. Kui otsite alternatiivi, võite pöörduda klassi BigDecimal poole. Kui double sobib teie eesmärkidele, siis siin on, kuidas seda deklareerida:
public class Main {
public static void main(String[] args) {
double x = 7.2252;
System.out.println(x);
}
}javaPange tähele, et siin pole ühtegi lisatähte. Väljund näeb välja järgmine:
7.2252javasüsi
char kasutatakse Unicode-märkide esitamiseks. See ulatub ‘\u0000’ kuni ‘\uffff’, seega 0 kuni 65535. Märgiandmetüüp suudab esitada peaaegu kõiki Euroopa ja Aasia märke. See kasutab 16 bitti mälu. Selle Java primitiivi väärtused on esitatud ühekordsete jutumärkide vahel. Siin on näide, kuidas see koodis välja näeb:
public class Main {
public static void main(String[] args) {
char x = '&';
System.out.println(x);
}
}javaVäljund näeb välja järgmine:
&java