Datové typy v C#: Double, Integer, Float, Char
⚡ Chytré shrnutí
Datové typy v jazyce C# definují typ hodnot, které může proměnná obsahovat, od celých čísel a čísel s plovoucí desetinnou čárkou až po booleovské a řetězcové hodnoty, a určují, kolik paměti si každá proměnná rezervuje během provádění programu.

Co jsou datové typy v C#?
Jazyk C# je dodáván se sadou základních datových typů. Tyto datové typy se používají k vytváření hodnot, které se používají v rámci aplikace. Pojďme prozkoumat základní datové typy dostupné v C#. Pro každý příklad upravíme pouze hlavní funkci v našem souboru Program.cs.
1) Celé číslo
Datové typy Integer se používají pro práci s čísly. V tomto případě jsou čísla celá čísla jako 10, 20 nebo 30. V C# je datový typ označen Klíčové slovo Int32. Níže je uveden příklad, jak lze tento datový typ použít. V našem příkladu definujeme proměnnou Int32 nazvanou num. Proměnné pak přiřadíme celočíselnou hodnotu a podle toho ji zobrazíme.
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace DemoApplication { class Program { static void Main(string[] args) { Int32 num=30; Console.Write(num); Console.ReadKey(); } } }
Code Vysvětlení:-
- Datový typ Int32 je určen pro deklaraci proměnné typu Integer s názvem num. Proměnné je pak přiřazena hodnota 30.
- Nakonec se pro zobrazení čísla na konzoli použije funkce console.write.
Pokud je výše uvedený kód zadán správně a program je úspěšně spuštěn, zobrazí se následující výstup.
Výstup:
Z výstupu je jasně vidět, že v konzoli byla zobrazena proměnná Integer s názvem num
2) Double
Pro práci s desetinnými místy se používá datový typ double. V tomto případě jsou čísla celá čísla jako 10.11, 20.22 nebo 30.33. V C# je datový typ označen klíčovým slovem „Double“. Níže je uveden příklad tohoto datového typu.
V našem příkladu budeme definovat dvojitou proměnnou nazvanou num. Poté přiřadíme a Double hodnotu do proměnné a poté ji odpovídajícím způsobem zobrazit.
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace DemoApplication { class Program { static void Main(string[] args) { double num=30.33; Console.Write(num); Console.ReadKey(); } } }
Code Vysvětlení:-
- Datový typ double je určen pro deklaraci typu double proměnlivý s názvem num. Proměnné je pak přiřazena hodnota 30.33.
- Nakonec se pro zobrazení čísla na konzoli použije funkce console.write.
Pokud je výše uvedený kód zadán správně a program je úspěšně spuštěn, zobrazí se následující výstup.
Výstup:
Z výstupu je jasně vidět, že v konzoli byla zobrazena dvojitá proměnná s názvem num
3) Boolean
Booleovský datový typ se používá pro práci s booleovskými hodnotami pravdivé a nepravdivé. V C# je datový typ označen klíčovým slovem Boolean. Níže je uveden příklad tohoto datového typu, který lze použít.
V našem příkladu definujeme booleovskou proměnnou nazvanou 'stav.' Proměnné pak přiřadíme booleovskou hodnotu a podle toho ji zobrazíme.
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace DemoApplication { class Program { static void Main(string[] args) { Boolean status=true; Console.Write(status); Console.ReadKey(); } } }
Code Vysvětlení:-
- Booleovský datový typ je určen k deklaraci booleovské proměnné s názvem 'stav'. Proměnné je pak přiřazena hodnota true/false.
- Nakonec je funkce console.write použita k zobrazení booleovské hodnoty do konzole.
Pokud je výše uvedený kód zadán správně a program je úspěšně spuštěn, zobrazí se výstup.
Výstup:
Z výstupu můžete jasně vidět, že v konzole byla zobrazena proměnná Boolean, která se rovná true
4) Řetězec
Datový typ String se používá pro práci s hodnotami String. V C# je datový typ označen klíčovým slovem 'String'. Níže je uveden příklad tohoto datového typu.
V našem příkladu definujeme proměnnou String nazvanou 'zpráva'. Proměnné pak přiřadíme hodnotu String a podle toho ji zobrazíme.
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace DemoApplication { class program { static void Main(string[] args) { String message="Hello"; Console.Write(message); Console.ReadKey(); } } }
Code Vysvětlení:-
- Datový typ String je určen k deklaraci řetězcové proměnné s názvem message. Proměnné je pak přiřazena hodnota „Ahoj“.
- Nakonec je funkce console.write použita k zobrazení hodnoty řetězce na konzoli.
Pokud je výše uvedený kód zadán správně a program je úspěšně spuštěn, zobrazí se výstup.
Výstup:
Z výstupu je jasně vidět, že se v konzoli zobrazila proměnná String s názvem message
Kompletní seznam datových typů C#
Čtyři výše uvedené příklady pokrývají nejběžnější typy, ale C# nabízí kompletní sadu vestavěných hodnotových datových typů. Každý typ si rezervuje pevně stanovené množství paměti a přijímá určitý rozsah hodnot, takže výběr nejmenšího typu, který bezpečně odpovídá vašim datům, udržuje program efektivní.
| Datový typ | Velikost | Rozsah / Description |
|---|---|---|
| byte | 1 bajtů | 0 255 na |
| krátký | 2 bytů | -32,768 na 32,767 |
| celé číslo (Int32) | 4 bytů | -2,147,483,648 na 2,147,483,647 |
| dlouhý | 8 bytů | Velmi velká celá čísla (±9.2 kvintilionů) |
| vznášet se | 4 bytů | Desetinná čísla s přesností zhruba 6–7 číslic |
| zdvojnásobit | 8 bytů | Desetinná čísla s přesností zhruba 15–16 číslic |
| desetinný | 16 bytů | Vysoce přesná desetinná čísla (28–29 číslic) pro peníze |
| spálit | 2 bytů | Jeden znak Unicode |
| bool | 1 bajtů | pravda nebo lež |
Vedle těchto hodnotových typů je typ řetězec nejpoužívanějším referenčním typem a ukládá posloupnost znaků libovolné délky. Výběr vhodného typu zabraňuje chybám přetečení a zbytečnému využití paměti.
Typy hodnot vs. referenční typy v C#
Každý datový typ v jazyce C# spadá do jedné ze dvou skupin: hodnotové typy a referenční typy. Toto rozlišení určuje, jak jazyk C# ukládá data a jak se proměnná chová při jejím kopírování nebo předávání metodě.
- Typy hodnot: Tyto ukládají skutečná data přímo, obvykle na zásobník. int, double, bool, char, výčetTypy , a struct jsou hodnoty. Přiřazení jedné proměnné druhé zkopíruje hodnotu, takže obě proměnné zůstanou nezávislé.
- Typy referencí: Tyto ukládají odkaz (adresu paměti), který ukazuje na data v haldě. Řetězec, objekt, pole a instance tříd jsou referenční typy. Kopírováním referenční proměnné se kopíruje pouze adresa, takže obě proměnné sdílejí stejný objekt.
Proměnná hodnotového typu nemůže být nikdy null, protože vždy obsahuje hodnotu, zatímco neinicializovaný referenční typ má výchozí hodnotu null. Pochopení tohoto rozdílu vám pomůže předpovědět, jak změny v datech probíhají programem.
Konverze typů v C#
Jazyk C# často potřebuje přesunout hodnotu z jednoho datového typu do jiného, například převést uživatelský vstup, kterým je vždy text, na číslo. Tento proces se nazývá konverze typů a probíhá třemi hlavními způsoby.
- Implicitní konverze: Kompilátor provádí automatickou konverzi, pokud nehrozí riziko ztráty dat, například při přiřazení typu int k typu double. Není vyžadována žádná speciální syntaxe.
- Explicitní konverze (casting): Cílový typ umístíte do závorek, například (int)myDoublePřetypování může vést ke ztrátě dat – převod typu double na int ztrácí desetinnou část – takže toto riziko podstupujete záměrně.
- Pomocné metody: Třída Convert (Convert.ToInt32) a metoda Parse každého typu (int.Parse) převádějí řetězce na čísla, zatímco ToString převádí hodnoty zpět na čitelný text.
Výběr správné konverze udržuje data přesná a zabraňuje chybám za běhu, když se typy na obou stranách přiřazení neshodují.








