Java kalboje yra 8 pri­mi­ty­vūs duomenų tipai, kurie visi turi fiksuotą dydį ir apibrėžtą verčių diapazoną. Jie naudojami kin­ta­mie­siems kurti ir jiems priskirti atskirus skaičius, simbolius ar logines vertes. 8 Java pri­mi­ty­vai yra boolean, byte, char, double, float, int, long ir short.

Kas yra Java pri­mi­ty­vai?

Kaip ir kitos prog­ra­ma­vi­mo kalbos, Java turi įvairių duomenų tipų. Java kalboje jie skirstomi į dvi ka­te­go­ri­jas. Pirmoji ka­te­go­ri­ja – tai nuorodų tipai, kurie nurodo laisvai api­brė­žia­mą objektą, pvz., eilutes, masyvus, klases ir sąsajas. Antroji ka­te­go­ri­ja – tai Java pri­mi­ty­vai. Jie turi fiksuotą dydį, kuris yra vienodas visose plat­for­mo­se. Jie taip pat turi savo apgaubimo klasę, yra nekintami ir turi fiksuotą verčių diapazoną. Java pri­mi­ty­vai naudojami kintamųjų, skirtų at­ski­riems skaičiams, sim­bo­liams ar loginėms vertėms, kūrimui.

Java kalboje yra 8 skirtingi pri­mi­ty­vūs duomenų tipai, kurie skiriasi pir­miau­sia tuo, kokias reikšmes jie saugo. Visi jie turi bendrą bruožą – gali saugoti tik vieną reikšmę. Kadangi kai kurie iš jų naudojami panašiose si­tu­aci­jo­se, Java pri­mi­ty­vus galima su­skirs­ty­ti į keturias ka­te­go­ri­jas:

  • Loginis duomenų tipas (būlinis)
  • In­te­g­ra­lus duomenų tipas (byte, short, int ir long)
  • Plau­kio­jan­čio­jo kablelio duomenų tipas (float ir double)
  • Simbolių duomenų tipas (char)

Kadangi jie saugomi tie­sio­giai steke, jų dydis yra ypač svarbus. Tai aptarsime toliau šiame vadove. Java pri­mi­ty­vai taip pat yra svarbūs, nes Java yra statinio tipavimo kalba. Taigi, kurdami programą, jau turite apibrėžti, kokio tipo yra kin­ta­ma­sis, kitaip gausite klaidų pra­ne­ši­mus. Čia pa­tei­kia­ma Java primityvų apžvalga:

Duomenų tipas Dydis Vertės dia­pa­zo­nas Nu­ma­ty­ta­sis vertė Apgaubimo klasė
būlio 1 bit true arba false false java.lang.Boolean
baitas 8 bitai nuo -128 iki 127 0 java.lang.Byte
trumpas 16 bitų -32768 iki 32767 0 java.lang.Short
int 32 bitai -2147483648 iki 2147483647 0 java.lang.Integer
ilgas 64 bitai -9223372036854775808 iki 9223372036854775807 0 java.lang.Long
plū­du­riuo­jan­tis 32 bitai iki 7 de­šim­tai­nių skaičių 0,0 java.lang.Float
dvigubas 64 bitai iki 16 de­šim­tai­nių skaičių vietų 0,0 java.lang.Double
char 16 bitų **„\u0000“ (t. y. 0) iki „\uffff“ (atitinka 65535) „\u0000“ java.lang.Character

Kaip naudoti Java primityvų boolinį tipą

Java Boolean taip pat žinomas kaip tiesos vertė. Tai pa­pras­čiau­sias Java pri­mi­ty­vas, nes turi tik dvi galimas vertes: „true“ arba „false“. Jis nau­do­ja­mas, kai rei­ka­lin­gas loginis operandas, ir yra vie­nin­te­lis loginis duomenų tipas. Iš­raiš­ko­se jo dvi galimos vertės paprastai reiškia sąlygą, kuri yra įvykdyta (true) arba ne­įvyk­dy­ta (false). Jei Boolean ne­pa­sky­rė­te vertės, jis turės nu­ma­ty­tą­ją vertę false. Boolean gali būti derinamas su Java Boolean ope­ra­to­riais, pvz., AND ir OR. Vertės pri­sky­ri­mas Boolean atrodo taip:

public class Main {
	public static void main(String[] args) {
		boolean x = true;
		System.out.println(x);
	}
}
java

Jei išvestį ini­ci­juo­si­te naudodami Java komandą System.out.prinln, išvestis atrodys taip:

true
java

baitas

Baitas yra ma­žiau­sias duomenų tipas tarp sveikųjų skaičių duomenų tipų. Jo verčių dia­pa­zo­nas yra labai ribotas, būtent nuo -128 iki 127. Tačiau jis naudoja tik 8 bitus atminties. Iš tiesų, jo pa­va­di­ni­mas kilęs iš to, kad 8 bitai sudaro vieną baitą. Jei dirbate tik su labai ribotu verčių diapazonu, baitą galite dekla­ruo­ti taip:

public class Main {
	public static void main(String[] args) {
		byte x = 101;
		System.out.println(x);
	}
}
java

Re­zul­ta­tas atrodo taip:

101
java

trumpas

short yra dvigubai didesnis už byte, todėl jis taip pat yra vienas iš rečiau naudojamų Java primityvų tipų. Tačiau jei byte yra per mažas, o int per didelis, short gali būti tas sveikasis skaičius, kurio ieškote. Štai kaip jį dekla­ruo­ti:

public class Main {
	public static void main(String[] args) {
		short x = -27412;
		System.out.println(x);
	}
}
java

Re­zul­ta­tas atrodo taip:

-27412
java

int

int yra daž­niau­siai nau­do­ja­mas iš visų sveikųjų skaičių duomenų tipų. Jis turi labai didelį verčių diapazoną ir vis tiek taupo vietą. int yra dviejų pa­pil­di­nių vertė ir dažnai nau­do­ja­mas kitoms reikmėms. Štai kaip jį naudoti:

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);
	}
}
java

Re­zul­ta­tas atrodo taip:

14 + 3 = 17
java

ilgas

long yra int iš­plė­ti­mas ir gali talpinti dar ilgesnius skaičius. int daugeliu atvejų yra pa­kan­ka­mas, bet jei norite dekla­ruo­ti long, galite tai padaryti taip:

public class Main {
	public static void main(String[] args) {
		long x = 47;
		System.out.println(x);
	}
}
java

Štai re­zul­ta­tas:

47
java

plū­du­riuo­ti

Yra du Java pri­mi­ty­vai, skirti ra­cio­na­li­nių skaičių pogru­piams vaizduoti. float yra mažesnis iš dviejų plau­kio­jan­čio­jo kablelio duomenų tipų ir naudoja 32 bitus. Jis gali rodyti iki 7 de­šim­tai­nių skaitmenų. Tačiau jis nėra labai tikslus, todėl nėra dažnai nau­do­ja­mas. Jei nu­sprę­si­te jį naudoti, galite jį dekla­ruo­ti taip:

public class Main {
	public static void main(String[] args) {
		float x = 7.22f;
		System.out.println(x);
	}
}
java

At­kreip­ki­te dėmesį, kad po skaičiaus tu­rė­tu­mė­te įterpti mažąją arba didžiąją raidę „f“, kad kom­piu­te­ris suprastų, jog tai yra plū­du­riuo­jan­tis skaičius, o ne dvigubas. Raidė „f“ išvestyje nerodoma:

7.22
java

dvigubas

Antrasis plau­kio­jan­čio­jo kablelio duomenų tipas yra double. Jis yra žymiai tik­s­les­nis nei float, bet vis tiek negrąžina visiškai tikslių rezultatų. Jei ieškote al­ter­na­ty­vos, galite pa­si­nau­do­ti klase Big­De­ci­mal. Jei double tinka jūsų tikslams, štai kaip jį dekla­ruo­ti:

public class Main {
	public static void main(String[] args) {
		double x = 7.2252;
		System.out.println(x);
	}
}
java

At­kreip­ki­te dėmesį, kad čia nėra pa­pil­do­mos raidės. Re­zul­ta­tas atrodo taip:

7.2252
java

char

char nau­do­ja­mas Unicode sim­bo­liams žymėti. Jis svyruoja nuo „\u0000“ iki „\uffff“, taigi nuo 0 iki 65535. Simbolių duomenų tipas gali žymėti beveik visus Europos ir Azijos simbolius. Jis naudoja 16 bitų atminties. Šio Java primityvo reikšmės yra nurodytos vien­gu­bo­se kabutėse. Štai kaip tai atrodo kode:

public class Main {
	public static void main(String[] args) {
		char x = '&';
		System.out.println(x);
	}
}
java

Re­zul­ta­tas atrodo taip:

&
java
Go to Main Menu