Kurz: Prozkoumání jazyka C#

V tomto kurzu se naučíte jazyk C#. Napíšete svůj první program v jazyce C# a zobrazíte 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é

Začínáte s programováním? Začněte zde – tento kurz předpokládá žádné předchozí zkušenosti. Pochází z jiného jazyka? Můžete raději přeskočit ukázky kódu a přeskočit na čísla v jazyce C# nebo Větve a smyčky.

V tomto kurzu se naučíte:

  • Spusťte GitHub Codespace s vývojovým prostředím jazyka C#.
  • Vytvořte svou první aplikaci v C#.
  • Vytváření a používání proměnných k ukládání textových dat
  • Používejte rozhraní API modulu runtime s textovými daty.

Požadavky

Musíte mít jednu z následujících možností:

Otevřete Codespaces

Pokud chcete spustit GitHub Codespace s výukovým prostředím, otevřete okno prohlížeče na úložišti výukového codespace. Vyberte zelené tlačítko Kód a kartu Codespaces . Pak výběrem znaménka + vytvořte nový Codespace pomocí tohoto prostředí.

Spuštění prvního programu

  1. Když se váš codespace načte, vytvořte nový soubor ve složce kurzů s názvem hello-world.cs.

  2. Otevřete nový soubor.

  3. Do hello-world.cs zadejte nebo zkopírujte následující kód:

    Console.WriteLine("Hello, World!");
    
  4. V okně integrovaného terminálu nastavte složku tutorials na aktuální složku a spusťte program:

    cd tutorials
    dotnet hello-world.cs
    

Spustili jste svůj první program v jazyce C#. Je to jednoduchý program, který vytiskne zprávu "Hello World!" Používá metodu Console.WriteLine k vytištění této zprávy. 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

První program vytiskne na string obrazovce text "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 ve vašem .cs souboru, abyste zjistili, co opravit. Toto cvičení vám pomůže naučit se strukturu kódu jazyka C#. Můžete také požádat Copilot o nalezení rozdílů nebo zjištění chyb.

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!

  1. Začněte následujícím kódem:

    string aFriend = "Bill";
    Console.WriteLine(aFriend);
    

    První řádek deklaruje proměnnou, aFrienda přiřadí jí hodnotu "Bill". Druhý řádek vytiskne název.

  2. 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 za kód, 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.

  3. Na konec předchozího kódu 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í slovo "Hello". Pojďme to teď opravit.

  4. Upravte řádky, které vytisknou zprávu, na následující kód:

    Console.WriteLine("Hello " + aFriend);
    
  5. Spusťte aplikaci znovu pomocí příkazu dotnet hello-world.cs k zobrazení výsledků.

    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ů .

  6. 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:

    Console.WriteLine($"Hello {aFriend}");
    
  7. Spusťte aplikaci znovu pomocí příkazu dotnet hello-world.cs k zobrazení výsledků. Místo "Hello {aFriend}" by zpráva měla být "Hello Maira".

Práce s řetězci

Poslední úprava byla vaší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.

  1. Vyzkoušejte následující kód v dolní části aplikace:

    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.

  2. Do dolní části aplikace 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 kódu. Váš editor má funkci 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.

Spropitné

Víc se uč: Prozkoumejte řetězce podrobně nebo si přečtěte o metodách a struktuře programů v části Základy jazyka C#.

Odebrání prázdných znaků z řetězců

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 provádějí tuto úlohu. Pomocí těchto metod odeberte úvodní a koncové mezery.

  1. 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 Trimdělají , TrimStarta TrimEnd metody. 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.

Hledání a nahrazení textu v řetězcích

K práci s řetězcem můžete použít jiné metody. Můžete například použít 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.

  1. 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 udělají z řetězce všechna velká písmena nebo všechna malá písmena. Vyzkoušejte následující kód.

  2. Zadejte ho, abyste viděli, jak IntelliSense poskytuje rady, když začnete psát To:

    Console.WriteLine(sayHello.ToUpper());
    Console.WriteLine(sayHello.ToLower());
    

    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ř.

  3. 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

Dvě podobné metody StartsWith a EndsWith také vyhledávají 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 StartsWithpoužívala EndsWith a Contains . 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 jako následující kód (rozbalte a podívejte se na odpověď):

string songLyrics = "You say goodbye, and I say hello";
Console.WriteLine(songLyrics.StartsWith("You"));
Console.WriteLine(songLyrics.StartsWith("goodbye"));

Console.WriteLine(songLyrics.EndsWith("hello"));
Console.WriteLine(songLyrics.EndsWith("goodbye"));

Další informace o typu string:

Úklid zdrojů

GitHub automaticky odstraní váš Codespace po 30 dnech nečinnosti. Pokud plánujete prozkoumat další tutoriály z této série, můžete ponechat Codespace zřízený. Pokud jste připraveni navštívit web .NET ke stažení sady .NET SDK, můžete odstranit svůj Codespace. Pokud chcete odstranit Codespace, otevřete okno prohlížeče a přejděte do služby Codespaces. V okně by se měl zobrazit seznam Codespaces. Vyberte tři tečky (...) v položce pro pracovní prostor kódu výukového kurzu a zvolte „odstranit“.

Další kroky

Pokračujte k dalšímu kurzu v této sérii nebo prozkoumejte související témata v jazyce C#Fundamentals:

  • Řetězce – Přečtěte si další informace o typu, který string jste použili v tomto tutoriálu.
  • Metody a struktura programů – Seznamte se s uspořádáním programů jazyka C#.
  • Souborové aplikace – Přečtěte si o dotnet run příkazu, který jste použili ke spuštění kódu.