nisfarm.ru

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ší rozdě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 jméno této paměti je přiřazeno k této paměťové buňce. 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 k objektu uloženému v jedné proměnné, druhou. 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".

Primární datové typy Java jsou byte, krátké, 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 celočíselné 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.

Intervaly ve formátu binární číslo začít s 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ž dlouholetou doslovný je přiřazen dlouhé, Java kompilátor kontroluje přiřazenou hodnotou a ujistěte se, že je v přijatelném diapazone- jinak, dojde k chybě kompilace.

Vzhledem k tomu, že rozsah int je menší než interval 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 proměnné int, protože může ztratit přesnost. 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).

Obvykle potřeba krátkých proměnných vzniká, 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 tak, že jej přiložíme do jednoduchých uvozovek: 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. Existuje 8 z nich: lsquo- rrsquo-, lsquo-, lsquo- frsquo-, lsquo- brsquo-, l- lsquo - rsquo-, lsquo - "rsquo-, lsquo-rsquo.

Sekvence řídící Unicode je ‚ uxxxx‘, kde u (lomítko následuje malá u) znamená počátek, xxxx představuje přesně čtyři hexadecimální číslice v znak kódu 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 zapsána ve tvaru ` nnn`, kde n je osmičkové číslo (0-7). Rozsah hodnot je od ` 000` do ` 377`, kde je 3778. odpovídá 25510. Z tohoto důvodu se používá k reprezentaci znaků s kódem od 0 do 255, potřebné pro interoperabilitu 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: true (true) a false (false). 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ěti počítače, může být uloženo v zobrazení 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šechno 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, dělení 0,0F o 0,0F) nejsou definovány a jsou reprezentovány zvláštní 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í dvojnásobná. 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.

Sdílet na sociálních sítích:

Podobné
© 2021 nisfarm.ru