Gyakorlat – Literális értékek nyomtatása
Ebben a gyakorlatban más típusú adatokat tartalmazó üzeneteket fog nyomtatni, és megtudhatja, miért olyan fontosak az adattípusok a C#-ban.
Mik a konstansértékek?
A literális érték olyan állandó érték, amely soha nem változik. Korábban egy literális sztringet jelenített meg a kimeneti konzolon. Más szóval szó szerint azt akarta, hogy az alfanumerikus karakterek H
e
, , l
, l
, o
stb. sztring megjelenjen a kimeneti konzolon.
A sztring adattípust akkor használja, ha alfanumerikus szavakkal, kifejezésekkel vagy adatokkal rendelkezik a bemutatóhoz, nem pedig számításhoz. Milyen más típusú literális adatokat nyomtathat ki a kimenetre?
Gyakorlat – Különböző literális adattípusok nyomtatása
A C#-nak számos adattípusa van. Az első lépésekben azonban csak öt vagy hat adattípust kell tudnia, mivel ezek a legtöbb forgatókönyvet lefedik. Jelenítsünk meg egy konstans adattípus-példányt a kimenethez.
Feljegyzés
Amikor dolgozni kezd a kódablakban, megfigyelheti, hogy a szintaxis egyes részeit más színekkel emeli ki, így jelölve sok egyéb mellett a kulcsszavakat, operátorokat és adattípusokat. Figyelje meg ezeket a színeket. Segít kiszúrni a szintaxishibákat a karakterek beírása közben, és segíthet a kód hatékonyabb megértésében.
Karakterkonstansok használata
Ha csak egyetlen alfanumerikus karaktert szeretne kinyomtatni a képernyőn, létrehozhat egy karakterkonstanst úgy, hogy egyetlen idézőjelben egy alfanumerikus karaktert körülvesz. A kifejezés char
rövid karakter. A C#-ban ezt az adattípust hivatalosan "char"-nak nevezik, de gyakran "karakternek" is nevezik.
A kódszerkesztőben szúrja be az alábbi kódsort:
Console.WriteLine('b');
Figyelje meg a beírt kódot.
Figyelje meg, hogy a betűt
b
idézőjelek'b'
veszik körül. Az egyes idézőjelek karakterkonstanst hoznak létre. Ne feledje, hogy a kettős idézőjelek használata adattípuststring
hoz létre.A kód futtatásához nyomja le a zöld Futtatás gombot. A kimeneti ablakban a következő eredményt kell látnia:
b
Ha a következő kódot adja meg:
Console.WriteLine('Hello World!');
a következő hibaüzenetet kapja:
(1,19): error CS1012: Too many characters in character literal
Figyelje meg a körülöttünk lévő Hello World!
idézőjeleket. Ha egyetlen idézőjelet használ, a C#-fordító egyetlen karaktert vár. Ebben az esetben azonban a karakterkonstans szintaxist használtuk, de ehelyett 12 karaktert adott meg!
Az adattípushoz hasonlóan string
minden alkalommal, char
amikor egyetlen alfanumerikus karakterrel rendelkezik a bemutatóhoz (nem számításhoz).
Egész szám literálok használata
Ha numerikus egész számot (törtek nélkül) szeretne megjeleníteni a kimeneti konzolon, használhat egy int literált. A kifejezés int
rövid egész szám, amelyet a matematikából ismerhet fel. A C#-ban ez az adattípus hivatalosan "int" néven van elnevezve, de gyakran "egész számnak" is nevezik. A int
konstansok nem igényelnek más operátorokat, például a string
.char
A kódszerkesztőben szúrja be az alábbi kódsort:
Console.WriteLine(123);
A kód futtatásához nyomja le a zöld Futtatás gombot. A kimeneti konzolon a következő eredményt kell látnia:
123
Lebegőpontos literálok használata
A lebegőpontos szám egy tizedesjegyet tartalmazó szám, például 3,14159. A C# három adattípust támogat a decimális számok megjelenítéséhez: float
, double
és decimal
. Minden típus különböző pontossági fokokat támogat.
Float Type Precision
----------------------------
float ~6-9 digits
double ~15-17 digits
decimal 28-29 digits
Itt a pontosság a pontos tizedesvesszőn múlt számjegyek számát tükrözi.
A kódszerkesztőben szúrja be az alábbi kódsort:
Console.WriteLine(0.25F);
Literál létrehozásához
float
fűzze hozzá a betűtF
a szám után. Ebben a szövegkörnyezetben azF
úgynevezett literál-utótag. A literális utótag jelzi a fordítónak, hogy típusértékkelfloat
szeretne dolgozni. A kis-f
és nagybetűketF
használhatja a konstans utótagkéntfloat
.A kód futtatásához nyomja le a zöld Futtatás gombot. A kimeneti konzolon a következő eredményt kell látnia:
0.25
Figyelje meg, hogy az
float
adattípus a legkevésbé pontos, ezért érdemes ezt az adattípust a rögzített törtértékekhez használni a váratlan számítási hibák elkerülése érdekében.A kódszerkesztőben szúrja be az alábbi kódsort:
Console.WriteLine(2.625);
Literál létrehozásához
double
csak adjon meg egy decimális számot. A fordító alapértelmezés szerint literál,double
ha a decimális számot literális utótag nélkül adja meg.A kód futtatásához nyomja le a zöld Futtatás gombot. A kimeneti ablakban a következő eredményt kell látnia:
2.625
A kódszerkesztőben szúrja be az alábbi kódsort:
Console.WriteLine(12.39816m);
Decimal (tizedes tört) típusú konstans megadásához a szám végéhez fűzze hozzá az
m
betűt. Ebben a szövegkörnyezetben azm
úgynevezett literál-utótag. A literális utótag jelzi a fordítónak, hogy típusértékkeldecimal
szeretne dolgozni. A kis-m
és nagybetűketM
használhatja a konstans utótagkéntdecimal
.A kód futtatásához nyomja le a zöld Futtatás gombot. A kimeneti konzolon a következő eredményt kell látnia:
12.39816
Logikai literálok használata
Ha ki szeretne nyomtatni egy vagy több értéket, true
false
használhat egy bool literált.
A kifejezés bool
a logikai kifejezés rövid. A C#-ban hivatalosan "bool"-nak nevezik őket, de a fejlesztők gyakran használják a "logikai" kifejezést.
A kódszerkesztőben szúrja be az alábbi kódsorokat:
Console.WriteLine(true); Console.WriteLine(false);
A kód futtatásához nyomja le a zöld Futtatás gombot. A kimeneti konzolon a következő eredményt kell látnia:
True False
A bool
literálok az igazság és a hamisság eszméit képviselik. Az értékeket széles körben fogja használni bool
, amikor elkezd döntési logikát hozzáadni az alkalmazásokhoz. Kiértékeli a kifejezéseket, hogy kiderüljön, igaz vagy hamis-e a kifejezés.
Miért foglalkozunk ennyit az adattípusokkal?
Az adattípusok központi szerepet töltenek be a C# nyelvben. Valójában az adattípusok hangsúlyozása a C# egyik legfontosabb megkülönböztető funkciója más nyelvekhez, például a JavaScripthez képest. A C# tervezői úgy vélték, hogy az adattípusok használatának megkövetelésével segíthetnek a fejlesztőknek a gyakori szoftverhibák elkerülésében. A C# nyelv elsajátítása közben látni fogja ennek a fogalomnak a kiteljesedését.
Az adattípusok képességeket határoznak meg
Korábban láthatta, hogy az string
s és char
az s a "bemutatóhoz, nem a számításhoz" használatos. Ha numerikus értékekkel kell matematikai műveleteket végezni, használjon int
vagy decimal
típust. Ha a bemutatóhoz vagy szövegkezeléshez használt adatokkal rendelkezik, használjon egy vagy char
több adattípuststring
.
Tegyük fel, hogy adatokat kellett gyűjtenie egy felhasználótól, például telefonszámot vagy irányítószámot. Attól függően, hogy melyik országban vagy régióban él, az adatok numerikus karakterekből állhatnak. Mivel azonban telefonszámokkal vagy irányítószámokkal ritkán végzünk matematikai műveleteket, az ezekkel végzett munkához érdemesebb string
adattípust választani.
Ugyanez igaz a bool
típusra is. Ha az alkalmazásban a "true"
(igaz) és a "false"
(hamis) szavakkal kell dolgoznia, használja a string
típust. Ha azonban az igaz vagy hamis (true
vagy false
) fogalma alapján kell kiértékelést végeznie, használjon bool
adattípust.
Fontos tudni, hogy ezek az értékek a sztringkonstans megfelelőikhez hasonlóan jelenhetnek meg. Azt hihetnénk például, hogy az alábbi utasításpárok megegyeznek:
Console.WriteLine("123");
Console.WriteLine(123);
Console.WriteLine("true");
Console.WriteLine(true);
Ez azonban csak a megjelenített kimenet, amely hasonlónak tűnik. A valóságban az int
vagy bool
típussal más műveletek végezhetők el, mint a string
típusú megfelelőikkel.
Összefoglalás
A fő szempont az, hogy számos adattípus létezik, de most csak néhányra összpontosít:
string
szavak, kifejezések vagy bármilyen alfanumerikus adat megjelenítéséhez, nem számításhozchar
egyetlen alfanumerikus karakterhezint
egész számhozdecimal
tört összetevővel rendelkező szám eseténbool
értéktrue
/false
esetén