V jazyce Java existuje 8 primitivních datových typů, které mají všechny pevnou velikost a definovaný rozsah hodnot. Používají se k vytváření proměnných a přiřazování jim jednotlivých čísel, znaků nebo logických hodnot. Těchto 8 primitivních datových typů v jazyce Java jsou boolean, byte, char, double, float, int, long a short.

Co jsou primitivní typy v Javě?

Stejně jako jiné programovací jazyky má i Java různé datové typy. V Javě se dělí do dvou kategorií. První z nich jsou referenční typy, které odkazují na objekt, který lze libovolně definovat, jako jsou řetězce, pole, třídy a rozhraní. Pak jsou tu primitivní typy Javy. Mají pevnou velikost, která je stejná na všech platformách. Mají také vlastní obalovou třídu, jsou neměnné a mají pevný rozsah hodnot. Primitivní typy Javy se používají k vytváření proměnných pro jednotlivá čísla, znaky nebo logické hodnoty.

V Javě existuje 8 různých primitivních datových typů, které se liší především tím, jaké hodnoty ukládají. Společné mají to, že mohou obsahovat pouze jednu hodnotu. Jelikož některé z nich se používají v podobných situacích, můžeme primitivní datové typy v Javě dále rozdělit do čtyř kategorií:

  • Logický datový typ (boolean)
  • Integrovaný datový typ (byte, short, int a long)
  • Datový typ s plovoucí desetinnou čárkou (float a double)
  • Znakový datový typ (char)

Jelikož jsou uloženy přímo ve stacku, jejich velikost má zvláštní význam. Více se tím budeme zabývat dále v tomto průvodci. Primitivní typy v Javě jsou také důležité, protože Java je staticky typovaný jazyk. Při vytváření programu tedy musíte již předem definovat, jaký datový typ má proměnná, jinak se setkáte s chybovými hláškami. Zde je přehled primitivních typů v Javě:

Typ dat Velikost Rozsah hodnot Výchozí hodnota Třída obálky
boolean 1 bit true nebo false false java.lang.Boolean
byte 8 bitů -128 až 127 0 java.lang.Byte
short 16 bitů -32768 až 32767 0 java.lang.Short
int 32 bitů -2147483648 až 2147483647 0 java.lang.Integer
long 64 bitů -9223372036854775808 až 9223372036854775807 0 java.lang.Long
float 32 bitů až 7 desetinných míst 0,0 java.lang.Float
double 64 bitů až 16 desetinných míst 0,0 java.lang.Double
char 16 bitů **’\u0000’ (tj. 0) až ‘\uffff’ (odpovídá 65535) ‘\u0000’ java.lang.Character

Jak používat primitivní typ boolean v Javě

Java Boolean je také známý jako hodnota pravdivosti. Jedná se o nejjednodušší primitivní typ v Javě, protože má pouze dvě možné hodnoty: „true“ (pravda) nebo „false“ (nepravda). Používá se, když je potřeba logický operand, a je to jediný logický datový typ. Ve výrazech jeho dvě možné hodnoty obvykle představují podmínku, která je buď splněna (true), nebo nesplněna (false). Pokud booleovskému typu nepřidělíte hodnotu, bude mít výchozí hodnotu false. Booleovský typ lze v Javě kombinovat s booleovskými operátory, jako jsou AND a OR. Přiřazení hodnoty booleovskému typu vypadá následovně:

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

Pokud použijete příkaz Java System.out.prinln k inicializaci výstupu, výstup bude vypadat takto:

true
java

bajt

byte je nejmenší datový typ mezi celočíselnými datovými typy. Má velmi omezený rozsah hodnot, a to od -128 do 127. Využívá však pouze 8 bitů paměti. Ve skutečnosti získal svůj název podle skutečnosti, že 8 bitů tvoří jeden bajt. Pokud pracujete pouze s velmi omezeným rozsahem hodnot, můžete deklarovat bajt takto:

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

Výstup vypadá následovně:

101
java

krátký

short je dvakrát větší než byte, což znamená, že je také jedním z méně používaných primitivních typů v Javě. Pokud je však byte příliš malý a int příliš velký, short může být celočíselný datový typ, který hledáte. Zde je příklad, jak jej deklarovat:

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

Výstup vypadá takto:

-27412
java

int

int je nejčastěji používaný datový typ celých čísel. Má velmi velký rozsah hodnot a zároveň šetří místo. int je hodnota doplňku k dvojce a často se používá i pro jiné účely. Zde je návod, jak jej používat:

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

Výstup vypadá následovně:

14 + 3 = 17
java

dlouhý

long je rozšířením typu int a může obsahovat ještě delší čísla. int postačuje pro většinu případů, ale pokud chcete deklarovat long, můžete tak učinit následovně:

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

Zde je výstup:

47
java

plovák

Existují dva primitivní typy jazyka Java pro reprezentaci podmnožin racionálních čísel. float je menší z obou datových typů s plovoucí desetinnou čárkou a používá 32 bitů. Může zobrazit až 7 desetinných míst. Není však příliš přesný, a proto se nepoužívá příliš často. Pokud se rozhodnete jej použít, můžete jej deklarovat následovně:

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

Všimněte si, že za číslo je třeba vložit malé nebo velké písmeno „f“, aby počítač věděl, že se jedná o číslo typu float, a ne double. Písmeno f se ve výstupu nezobrazuje:

7.22
java

dvojitý

Druhým datovým typem s plovoucí desetinnou čárkou je double. Je podstatně přesnější než float, ale stále nevrací zcela přesné výsledky. Pokud hledáte alternativu, můžete se obrátit na třídu BigDecimal. Pokud double vyhovuje vašim účelům, zde je návod, jak jej deklarovat:

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

Všimněte si, že zde není žádné další písmeno. Výstup vypadá následovně:

7.2252
java

char

char se používá k reprezentaci znaků Unicode. Rozsah je od „\u0000“ do „\uffff“, tedy od 0 do 65535. Datový typ character může reprezentovat téměř všechny evropské a asijské znaky. Využívá 16 bitů paměti. Hodnoty tohoto primitivního typu v Javě se zadávají v jednoduchých uvozovkách. Takto to vypadá v kódu:

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

Výstup vypadá následovně:

&
java
Přejít do hlavního menu