Programování: Java. Typy dat

Datový typ je definován třemi komponenty:

  • soubor hodnot nebo objektů;
  • množinu operací, které lze aplikovat na všechny hodnoty v sadě;
  • prezentace dat, která určuje jejich ukládání.

Jaké jsou typy dat v jazyce Java?

Programovací jazyk obsahuje některé předdefinované vestavěné typy a umožňuje programátorům definovat své vlastní, vlastní.

V jazyce Java jsou datové typy rozděleny na primitivní a referenční typy.

"Primitivní" znamená, že jeho dalšídělení není možné. Rozšíření nebo změna jeho programovacího jazyka neumožňuje. Tento typ dat popisuje primitivní a jiné uživatelsky definované typy.

Proměnná primitivního typu obsahuje hodnotu a referenční proměnná obsahuje adresu objektu v paměti.

java datových typů

Jazyk Java. Datové typy: čas a datum

Sdružená data jsou rozdělena do tříd, rozhraní a polí. Členové typu rozhraní jsou abstraktní metody a konstanty. V jazyce Java jsou datové a datové typy specifikovány konstruktorem Date ():

  • d = nový datum ().

Příkladem odkazu je také řetězec.

Jazyk Java. Typy dat: Řetězec

Řetězec je třída definovaná v knihovně Java a může být použita pro práci s textem (sekvence znaků).

Deklarace referenční proměnné řetězce je následující: String str.

Před přiřazením odkazu na objekt takové proměnné je nutné jej vytvořit u nového operátora. Například můžete vytvořit objekt třídy String s textem "Hello":

  • str = nový řetězec ("Hello").

Co se stane, když je tento kód spuštěn? Nejprve je přidělena paměť a název této paměti je spojen s touto paměťovou buňkou. To se neliší od deklarace primitivní proměnné. Druhý fragment kódu vytvoří objekt String s textem "Hi" v paměti a uloží odkaz na něj (nebo adresu paměti) na str.

Referenční datové typy Java také umožňujípřiřadit odkaz na objekt uložený v jedné proměnné, jiný. Oba se týkají stejného objektu v paměti. Toho lze dosáhnout takto:

  • Řetězec str1;
  • Řetězec str2;
  • str1 = nový řetězec ("Hello");
  • str2 = str1;

Existuje konstanta null, která může být přiřazena libovolné referenční proměnné. Nevztahuje se na žádný objekt.

Objekt String je vytvořen pomocí nového operátora. Ale protože řetězce jsou používány často, je snadnější způsob, jak vytvořit. Všechny řetězcové literály, tedy posloupnost znaků obsažených v dvojitých uvozovkách, jsou považovány za objekty řetězce. Proto místo nového operátora můžete použít řetězcové literály:

  • String str1 = "Dobrý den".

Primitivní datové typy Java - byte, short, int,dlouhá, char, float, double a boolean. Jsou rozděleny do dvou kategorií: logické a numerické. Ty mohou být rozděleny na celá čísla a čísla s plovoucí desetinnou čárkou.

Celé datové typy jazyka Java jsou číselné typy, jejichž hodnoty jsou celočíselné. Existuje pět z nich: byte, krátké, int, dlouhé a char.

java datových typů

Int

Int je 32bitový podepsaný primitivní datový typ. Proměnná trvá 32 bitů paměti. Povolený rozsah je od -2147483648 do 2147483647 (-231 až 231 - 1). Všechna celá čísla v tomto rozsahu jsou integer literály nebo konstanty. Například 10, -200, 0, 30, 19 jsou literály int. Mohou být přiřazeny k int:

  • int num1 = 21;

Celý literál může být vyjádřen jako binární, osmičkový, desetinný a hexadecimální.

Když písmeno začíná nula a má alespoň dvě číslice, považuje se za písmeno v osmičkovém formátu. 0 a 00 představují stejnou hodnotu - nula.

Všechny literály int v hexadecimálním formátu začínají 0x nebo 0x a musí obsahovat alespoň jednu hexadecimální číslici:

  • int num1 = 0x123.

Int-literály v binárním formátu začínají 0b nebo 0B:

  • int num1 = 0b10101.

java datových typů času

Dlouho

Jedná se o 64bitový podepsaný primitivní typ. Používá se, když výsledek výpočtu může překročit rozsah int. Rozsah dlouhý - od -263 až 263- 1. Celá čísla v tomto rozsahu jsou dlouhé písmeny.

Chcete-li rozlišovat mezi int a dlouhými datovými typy v Javě, doslovný typ posledního typu vždy končí L nebo l.

Celá literatura dlouhého typu může být také vyjádřena v osmi, hexadecimálním a binárním formátu.

Když je dlouhý literál přiřazen proměnné dlouhé,Kompilátor jazyka Java kontroluje přiřazenou hodnotu a ověří, zda je v přijatelném rozsahu; jinak dojde k chybě kompilace.

Protože rozsah int je menší než rozsah dlouhý,Hodnota int proměnné může být vždy přiřazena proměnné typu long. Zadání reverzu není možné ani v intervalu int. Za tímto účelem se používá explicitní indikace:

  • num1 = (int) num2;

java typ datových typů

Byte

Byte je 8-bitové celé primitivní typu. Jeho rozsah je od -128 do 127 (-27 až 27 - 1). Toto je nejmenší typ celé délky dostupný v Javě. Obvykle se používají proměnné bytu, když program používá mnoho hodnot v rozsahu od -128 do 127 nebo při práci s binárními daty. Na rozdíl od int a dlouhých literálů neexistují žádné byty literály. Můžete však přiřadit proměnné bytu libovolný int-literál, protože přepíše rozsah bajtů.

Pokud je hodnota proměnné mimo rozsah, vytvoří Java chybu kompilátoru.

Kromě toho můžete přiřadit pouze hodnotu int-literálu, ale ne hodnotu uloženou v int proměnné, protože to může způsobit ztrátu přesnosti. To vyžaduje explicitní casting.

  • b1 = (byte) num1.

Krátký

Jedná se o 16bitový podepsaný celý primitivní datový typ. Jeho rozsah je od -32768 do 32767 (nebo -215 až 215 - 1).

Je zpravidla potřeba krátkých proměnnýchnastane, když program používá velký počet hodnot, které nepřesahují zadaný rozsah. Krátký literál chybí, ale je možné přiřadit libovolný doslovný int v rozsahu. Hodnotu proměnné bytu lze vždy přiřadit. Zbývající pravidla pro přiřazení int nebo dlouhé krátké proměnné jsou stejné jako pro byte.

primitivní datové typy java

Char

Char je 16bitový nepodepsanýprimitivní datový typ, který představuje znak Unicode. Absence znaménka znamená, že proměnná nemůže mít zápornou hodnotu. Rozsah je od 0 do 65535, což je stejné jako znaková sada Unicode. Literál představuje hodnotu charakteru a může být vyjádřen v těchto formách:

  • znak uzavřený v jednoduchých uvozovkách;
  • sekvence řídících znaků;
  • sekvence ovládacích znaků Unicode;
  • posloupnost osmičkových řídících znaků.

Symbol lze vyjádřit uzavřenímjednoduché uvozovky: char C1 = "A". Dvojité uvozovky označují řetězcový řetězec, který nelze přiřadit znakovému proměnnému, i když řetězec obsahuje pouze jeden znak. To je nepřijatelné, protože odkaz na primitivní proměnnou není přiřazen. Všechny řetězcové literály jsou objekty třídy String a tudíž odkazy, zatímco znakové literály se vztahují k primitivnímu typu.

Doslovný, vyjádřený řídící sekvencí, je psán formou zpětného lomítka s jednočinným charakterem. Celkem je celkem 8: 'n', 'r', 'f', 'b', 't', '\', '' ',' ''.

Unicode řídící sekvence má formu"uxxxx", kde u (zpětné lomítko následované malými písmeny u) označuje jeho začátek a xxxx představuje přesně čtyři hexadecimální číslice znakového kódu v systému Unicode. Například "A" má hodnotu 65 v desítkové soustavě a 41 v šestnáctkové soustavě. Tento symbol může být reprezentován jako "u0041".

Osmičková řídící sekvence je napsána jako "nnn", kde n je osmičkové číslo (0-7). Rozsah hodnot je od "8 odpovídá 25510. Proto je používán reprezentovatznaky s kódem od 0 do 255, což je nezbytné pro kompatibilitu s jinými programovacími jazyky. Na rozdíl od sekvence Unicode, kde je to nutné, všechny čtyři hexadecimální číslice, můžete použít 1, 2 nebo 3 osmičkové: „n“, „nn“ nebo „nnn“.

java referenčních datových typů

Booleovský typ

Boolean má pouze dvě platné hodnoty: pravdivé a falešné. Jsou nazývány booleovskými literály. Logická proměnná nelze přenést na jiný typ a naopak. Java nedefinuje velikost booleovské - závisí to na konkrétní implementaci virtuálního stroje Java.

Typy pohyblivých bodů jazyka Java

Číslo, které obsahuje zlomkovou část v pamětipočítač může být uložen v pohledu s pevným počtem číslic před a za bodem nebo označující jeho polohu. Jelikož počet číslic se může lišit, říká se, že bod "pluje".

V jazyce Java datové typy float používají 32 bitů. Podle standardu IEEE 754 to odpovídá jediné přesnosti, která umožňuje například reprezentovat čísla 1,4 x 10-45 a 3,4 x 1038, pozitivní i negativní.

Všechna reálná čísla, která končí v f nebo F, se nazývají float-literals. Mohou být uvedeny v desítkovém formátu a ve formě vědecké notace. Například:

  • float f1 = 3,25F;
  • float f2 = 32,5E-1F;
  • float f3 = 0,325E + 1F.

Typ určuje dvě nuly: + 0.0F (nebo 0.0F) a -0.0F. Pro účely srovnání jsou však obě nuly považovány za rovnocenné. Navíc identifikoval dva typy nekonečna: pozitivní a negativní. Výsledky některých operací (například rozdělení 0.0F na 0.0F) nejsou definovány a jsou reprezentovány speciální hodnotou NaN.

java datových typů data a času

Dvojitá přesnost

Pro ukládání čísel s pohyblivou čárkou používá dvojité 64 bitů. Číslo dvojité přesnosti může představovat pozitivní a záporné hodnoty 4,9 x 10-324 a 1,7 x 10308.

Všechna reálná čísla jsou ve výchozím nastavenídvojité literály. Pokud je to požadováno, mohou být explicitně označeny příponou d nebo D, například 19.27d. Dvojité písmeno může být vyjádřeno v desítkové formě a ve vědeckém zápisu.

</ p>
Líbí se:
0
Související články
Java: InputStream. Vstupní toky
Zapouzdření je co? Zapouzdření v
Nelineární programování je jedním z nástrojů
Jak nainstalovat jazyk Java v systému Windows 7
Jaké jsou údaje v Pascalu?
Objektově orientované programování
Jak se naučit programovat od začátku
Typy dat
Java: práce se soubory - psaní, čtení,
Populární příspěvky
nahoru