Java: Datové typy

Z MiS
(Rozdíly mezi verzemi)
Přejít na: navigace, hledání
(Vytvoření stránky)
 
(Celá čísla: Komentář k ořezání desetinných čísel.)
 
(Není zobrazeno 6 mezilehlých verzí od 1 uživatele.)
Řádka 1: Řádka 1:
 
[[Category:VSE]][[Category:Informatika]][[Category:Programování]][[Category:Java]]
 
[[Category:VSE]][[Category:Informatika]][[Category:Programování]][[Category:Java]]
 +
 +
== Co je to datový typ ==
 +
 +
Datový typ entity (objektu nebo proměnné) udává:
 +
* rozsah hodnot, které můžeme do entity ukládat,
 +
* a operace, které můžeme s entitou provádět.
 +
 +
<div class="Priklad">
 +
Příklad: datový typ <code>int</code> v Javě
 +
* Udává, že se jedná o celá čísla v rozsahu &lt; 2^(-32) ; 2^(32)-1 ).
 +
* Můžeme provádět operace sčítání, odčítání, násobení a další.
 +
 +
Příklad: třída (datový typ) <code>Point</code> v Javě
 +
* rozsah: uspořádané dvojice čísel rozsahu <code>int</code>
 +
* operace: <code>posun(x,y)</code>, <code>rovnost(bod2)</code> a další...
 +
</div>
  
 
== Jednoduché (primitivní, skalární) ==
 
== Jednoduché (primitivní, skalární) ==
Ordinální
+
; Ordinální a neordinální
*Lze určit předchozí a následující hodnotu.
+
* u ordinálních lze určit předchozí a následující hodnotu (znak, číslo, ne desetinné číslo).
*pravda/nepravda
+
 
**boolean
+
=== Logická hodnota ===
*Celá čísla
+
* Datový typ: <code>boolean</code>
**int
+
* Proměnná typu <code>boolean</code> může nést pouze dvě hodnoty:
**long
+
** pravda/ano (anglicky <code>true</code>)
*Písmeno
+
** nepravda/ne (anglicky <code>false</code>)
**char
+
 
*Dále:
+
* Vytvoření proměnné:
**výčtový typ
+
boolean spravne;
**prázdný typ (void)
+
* Nastavení hodnoty:
Neordinální
+
spravne = true;
*Desetinná čísla
+
spravne = false;
**double
+
spravne = a > 5;
**float
+
* <code>spravne</code> bude <code>true</code> pokud hodnota proměnné <code>a</code> je větší než 5
 +
spravne = ! vysledek;
 +
* Hodnota proměnné <code>spravne</code> bude opačná než hodnota proměnné <code>vysledek</code>.
 +
* Testování hodnoty:
 +
if (spravne) {
 +
    System.out.println("V&nbsp;proměnné spravne je hodnota pravda (true).");
 +
}
 +
if (! spravne) {
 +
    System.out.println("V&nbsp;proměnné spravne je hodnota nepravda (false).");
 +
}
 +
 
 +
=== Celá čísla ===
 +
* <code>int</code>
 +
int polomer = 5;
 +
int obvodObdelnika = 2*(a+b);
 +
 
 +
int a, b, c, obvod3;
 +
obvod3 = a+b+c;
 +
* <code>long</code>
 +
 
 +
<div class="Varovani">
 +
Pokud do proměnné celočíselného typu uložíme desetinné číslo, automaticky se zahodí desetinná část!
 +
Příklad:
 +
int polomer = 1;
 +
int obvodKruhu = 2*Math.PI*polomer;
 +
System.out.println(obvodKruhu); ''// Vypíše se: ''6'', nikoli ''6.28'', jak bychom čekali!''
 +
</div>
 +
 
 +
=== Písmeno ===
 +
* <code>char</code>
 +
 
 +
=== Desetinná čísla ===
 +
* <code>double</code>
 +
* <code>float</code>
 +
 
 +
=== Další ===
 +
* Výčtový typ
 +
* „Prázdný typ“ (<code>void</code>)
 +
public void setLimit(int limit) {
 +
    ...
 +
}
  
 
== Složené (strukturované) ==
 
== Složené (strukturované) ==
Pole
+
=== [[Java: Práce s poli|Pole]] ===
*např. 200 čísel
+
* Viz stránka [[Java: Práce s poli]].
*int[]
+
* <code>int[]</code>
Objektové
+
int[] hodnoty = new int[100];
*Objekty tříd
+
hodnoty[0] = 10;
*Třída zde je datovým typem.
+
hodnoty[99] = 1;
Textový řetězec (text)
+
int vysledek += hodnoty[99];
*V Javě realizován jako objekt třídy String.
+
 
 +
=== Objektové ===
 +
* Objekty tříd.
 +
* Sdružují dohromady data (jednu nebo několik hodnot jiného datového typu) a operace.
 +
* Třída je vlastně popisem nového (námi vytvořeného) datového typu.
 +
* Syntaxe viz: [[Java:_Zápis_tříd]]
 +
 
 +
=== Textový řetězec (text) ===
 +
* V Javě realizován jako objekt třídy <code>String</code>.
 +
* Zároveň lze ale používat konstanty typu textový řetězec.
 +
String jmeno;
 +
String titul = "Mgr.";
 +
jmeno = "Pavel Karas";
 +
jmeno = titul+" "+jmeno;
 +
System.out.println("Vaším vedoucím je "+jmeno;
 +
 
 +
== Další zdroje ==
 +
# [http://interval.cz/clanky/naucte-se-javu-datove-typy/ Interfal.cz-> Naučte se Javu-> Datové typy]

Aktuální verze z 26. 11. 2015, 14:07


Obsah

Co je to datový typ

Datový typ entity (objektu nebo proměnné) udává:

Příklad: datový typ int v Javě

  • Udává, že se jedná o celá čísla v rozsahu < 2^(-32) ; 2^(32)-1 ).
  • Můžeme provádět operace sčítání, odčítání, násobení a další.

Příklad: třída (datový typ) Point v Javě

  • rozsah: uspořádané dvojice čísel rozsahu int
  • operace: posun(x,y), rovnost(bod2) a další...

Jednoduché (primitivní, skalární)

Ordinální a neordinální

Logická hodnota

boolean spravne;
spravne = true; 
spravne = false;
spravne = a > 5;
spravne = ! vysledek;
if (spravne) {
    System.out.println("V proměnné spravne je hodnota pravda (true).");
}
if (! spravne) {
    System.out.println("V proměnné spravne je hodnota nepravda (false).");
}

Celá čísla

int polomer = 5;
int obvodObdelnika = 2*(a+b);
int a, b, c, obvod3;
obvod3 = a+b+c;

Pokud do proměnné celočíselného typu uložíme desetinné číslo, automaticky se zahodí desetinná část! Příklad:

int polomer = 1;
int obvodKruhu = 2*Math.PI*polomer;
System.out.println(obvodKruhu); // Vypíše se: 6, nikoli 6.28, jak bychom čekali!

Písmeno

Desetinná čísla

Další

public void setLimit(int limit) {
    ...
}

Složené (strukturované)

Pole

int[] hodnoty = new int[100];
hodnoty[0] = 10;
hodnoty[99] = 1;
int vysledek += hodnoty[99];

Objektové

Textový řetězec (text)

String jmeno;
String titul = "Mgr.";
jmeno = "Pavel Karas";
jmeno = titul+" "+jmeno;
System.out.println("Vaším vedoucím je "+jmeno;

Další zdroje

  1. Interfal.cz-> Naučte se Javu-> Datové typy
Osobní nástroje
Jmenné prostory
Varianty
Akce
Výuka
Navigace
Nástroje