Úvod do jazyka C# – interaktivní kurz
V tomto kurzu se naučíte jazyk C# interaktivně, pomocí prohlížeče napsat jazyk C# a podívat se na výsledky kompilace a spuštění kódu. Obsahuje řadu lekcí, které začínají programem "Hello World". Tyto lekce vás naučí základy jazyka C#.
Spropitné
Když blok fragmentu kódu obsahuje tlačítko Spustit, otevře se interaktivní okno nebo nahradí stávající kód v interaktivním okně. Pokud fragment kódu neobsahuje tlačítko Spustit, můžete kód zkopírovat a přidat ho do aktuálního interaktivního okna.
Spuštění prvního programu
V interaktivním okně spusťte následující kód.
Console.WriteLine("Hello, World!");
Blahopřejeme! Spustili jste svůj první program v jazyce C#. Je to jednoduchý program, který vytiskne zprávu "Hello World!" K vytištění této zprávy se použila metoda Console.WriteLine.
Console
je typ, který představuje okno konzoly.
WriteLine
je metoda typu Console
, která vytiskne řádek textu do dané textové konzoly.
Pojďme pokračovat a prozkoumat více. Zbytek této lekce zkoumá práci s typem string
, který představuje text v jazyce C#. Stejně jako typ Console
má typ string
metody. Metody string
pracují s textem.
Deklarace a použití proměnných
Váš první program na obrazovce vytiskl string
"Hello World!".
Spropitné
Při zkoumání jazyka C# (nebo libovolného programovacího jazyka) uděláte chyby při psaní kódu. Kompilátor tyto chyby najde a oznámí vám je. Pokud výstup obsahuje chybové zprávy, podívejte se pozorně na ukázkový kód a kód v interaktivním okně a podívejte se, co opravit. Toto cvičení vám pomůže naučit se strukturu kódu jazyka C#.
První program je omezen na tisk jedné zprávy. Užitečnější programy můžete psát pomocí proměnných. Proměnná je symbol, který můžete použít ke spuštění stejného kódu s různými hodnotami. Pojďme to vyzkoušet! Začněte následujícím kódem:
string aFriend = "Bill";
Console.WriteLine(aFriend);
První řádek deklaruje proměnnou, aFriend
a přiřadí jí hodnotu "Bill". Druhý řádek vytiskne název.
Proměnné, kterou deklarujete, můžete přiřadit různé hodnoty. Jméno můžete změnit na jednoho ze svých přátel. Přidejte tyto dva řádky do interaktivního okna předcházejícího po kódu, který jste už přidali. Nezapomeňte zachovat deklaraci proměnné aFriend
a jejího počátečního přiřazení.
Důležitý
Neodstraňujte deklaraci aFriend
. Na konec předchozího interaktivního okna přidejte následující kód:
aFriend = "Maira";
Console.WriteLine(aFriend);
Všimněte si, že stejný řádek kódu vytiskne dvě různé zprávy na základě hodnoty uložené v proměnné aFriend
.
Možná si všimnete, že v posledních dvou zprávách chybělo slovo "Hello". Pojďme to teď opravit. Upravte řádky, které vytisknou zprávu, na následující kód:
Console.WriteLine("Hello " + aFriend);
Vyberte Spustit znovu, abyste viděli výsledky.
K vytváření řetězců z proměnných a konstantních řetězců jste používali +
. Je lepší způsob. Proměnnou můžete umístit mezi {
a }
znaky, aby jazyk C# nahradil tento text hodnotou proměnné.
Tento proces se nazývá interpolace řetězců .
Pokud před počáteční uvozovku řetězce přidáte $
, můžete do řetězce mezi složené závorky zahrnout proměnné, například aFriend
. Zkuste to zkusit:
Vyberte Spustit znovu, abyste viděli výsledky. Místo "Hello {aFriend}" by zpráva měla být "Hello Maira".
Console.WriteLine($"Hello {aFriend}");
Práce s řetězci
Poslední úprava byla naším prvním pohledem na to, co můžete dělat s řetězci. Pojďme prozkoumat víc.
Nejste omezeni na jedinou proměnnou mezi složenými závorkami. Vyzkoušejte následující kód:
string firstFriend = "Maria";
string secondFriend = "Sage";
Console.WriteLine($"My friends are {firstFriend} and {secondFriend}");
Řetězce jsou více než kolekce písmen. Délku řetězce najdete pomocí Length
.
Length
je vlastnost řetězce a vrátí počet znaků v daném řetězci. Do dolní části interaktivního okna přidejte následující kód:
Console.WriteLine($"The name {firstFriend} has {firstFriend.Length} letters.");
Console.WriteLine($"The name {secondFriend} has {secondFriend.Length} letters.");
Spropitné
Teď je vhodná doba k prozkoumání sami. Dozvěděli jste se, že Console.WriteLine()
píše text na obrazovku. Naučili jste se, jak deklarovat proměnné a zřetězovat řetězce. Experimentujte v interaktivním okně. V okně je funkce s názvem IntelliSense, která nabízí návrhy, co můžete dělat. Zadejte .
za d
v firstFriend
. Zobrazí se seznam návrhů pro vlastnosti a metody, které můžete použít.
K tisku zpráv jste používali metodu, Console.WriteLine. Metoda je blok kódu, který implementuje určitou akci. Má název, abyste k němu měli přístup.
Zastřihnout
Předpokládejme, že řetězce mají úvodní nebo koncové mezery, které nechcete zobrazit. Chcete odstranit mezery z řetězců. Metoda Trim a související metody TrimStart a TrimEnd to dělají. Tyto metody můžete použít jenom k odebrání úvodních a koncových mezer. Vyzkoušejte následující kód:
string greeting = " Hello World! ";
Console.WriteLine($"[{greeting}]");
string trimmedGreeting = greeting.TrimStart();
Console.WriteLine($"[{trimmedGreeting}]");
trimmedGreeting = greeting.TrimEnd();
Console.WriteLine($"[{trimmedGreeting}]");
trimmedGreeting = greeting.Trim();
Console.WriteLine($"[{trimmedGreeting}]");
Hranaté závorky [
a ]
pomáhají vizualizovat, co Trim
, TrimStart,
a TrimEnd
metody dělají. Hranaté závorky ukazují, kde začínají a končí mezery.
Tento příklad posiluje několik důležitých konceptů pro práci s řetězci. Metody, které manipulují s řetězci, vrací nové objekty řetězců místo provádění změn. Uvidíte, že každé volání některé z metod Trim
vrátí nový řetězec, ale nezmění původní zprávu.
Nahradit
Pro práci s řetězcem jsou k dispozici další metody. Pravděpodobně jste například dříve použili příkaz hledání a nahrazení v editoru nebo textovém procesoru. Metoda Replace v řetězci dělá něco podobného. Vyhledá podřetězec a nahradí jej jiným textem. Metoda Replace přebírá dva parametry. Tyto parametry jsou řetězce mezi závorky. Prvním řetězcem je text, který chcete vyhledat. Druhý řetězec je text, kterým ho nahradíte. Vyzkoušejte si to sami. Přidejte tento kód. Začněte psát .Re
za proměnnou sayHello
a zadejte jej pro zobrazení nápovědy.
string sayHello = "Hello World!";
Console.WriteLine(sayHello);
sayHello = sayHello.Replace("Hello", "Greetings");
Console.WriteLine(sayHello);
Dvě další užitečné metody převedou řetězec na velká písmena nebo všechna malá písmena. Vyzkoušejte následující kód. Zadejte ho, abyste viděli, jak IntelliSense poskytuje rady, když začnete psát To
:
Console.WriteLine(sayHello.ToUpper());
Console.WriteLine(sayHello.ToLower());
Vyhledávací řetězce
Druhou částí operace hledání a nahrazení je vyhledání textu v řetězci. K hledání můžete použít metodu Contains. Řekne vám, jestli řetězec obsahuje podřetězce uvnitř. Vyzkoušejte následující kód a prozkoumejte Contains:
string songLyrics = "You say goodbye, and I say hello";
Console.WriteLine(songLyrics.Contains("goodbye"));
Console.WriteLine(songLyrics.Contains("greetings"));
Metoda Contains vrátí logickou hodnotu, která vám řekne, jestli byl nalezen řetězec, který hledáte.
logická proměnná uloží buď hodnotu true
nebo hodnotu false
. Při zobrazení jako textový výstup jsou uvedeny s velkými písmeny: True
a False
. Dozvíte se více o logických hodnotách v pozdější lekci.
Výzva
Existují dvě podobné metody, StartsWith a EndsWith, které také hledají podřetězce v řetězci. Tyto metody najdou podřetězce na začátku nebo na konci řetězce. Zkuste změnit předchozí ukázku tak, aby místo Containspoužívala StartsWith a EndsWith . Na začátku řetězce vyhledejte "You" nebo "goodbye". Na konci řetězce vyhledejte "hello" nebo "goodbye".
Poznámka
Při testování textu na konci řetězce sledujte interpunkci. Pokud řetězec končí tečkou, měli byste zkontrolovat, zda jiný řetězec také končí tečkou.
Měli byste získat true
, pokud začíná na "vy" a končí na "ahoj", a false
, pokud začíná nebo končí na "sbohem".
Napadlo vás něco podobného jako následující (rozbalte a podívejte se na odpověď):
Dokončili jste úvodní kurz "Hello C#". Pokud chcete zahájit další interaktivní kurz, můžete vybrat tématiku Čísla v C#, nebo můžete navštívit web .NET, kde si můžete stáhnout .NET SDK, vytvořit projekt na vašem počítači a pokračovat v programování. V části Další kroky se vrátíte k těmto kurzům.
Další informace o typu string
: