Dela via


Introduktion till C# – interaktiv självstudie

I den här självstudien lär du dig C# interaktivt med hjälp av webbläsaren för att skriva C# och se resultatet av att kompilera och köra koden. Den innehåller en serie lektioner som börjar med ett "Hello World"-program. De här lektionerna lär dig grunderna i C#-språket.

Tips

När ett kodfragmentblock innehåller knappen "Kör" öppnas det interaktiva fönstret eller ersätter den befintliga koden i det interaktiva fönstret. När kodfragmentet inte innehåller någon "Kör"-knapp kan du kopiera koden och lägga till den i det aktuella interaktiva fönstret.

Kör ditt första program

Kör följande kod i det interaktiva fönstret.

Console.WriteLine("Hello, World!");

Grattis! Du körde ditt första C#-program. Det är ett enkelt program som skriver ut meddelandet "Hello World!" Den använde metoden Console.WriteLine för att skriva ut meddelandet. Console är en typ som representerar konsolfönstret. WriteLine är en metod av Console typ som skriver ut en textrad till textkonsolen.

Nu ska vi gå vidare och utforska mer. Resten av den här lektionen utforskar hur du arbetar med den string typen, som representerar text i C#. Precis som den Console typen har string-typen metoder. De string metoderna fungerar med text.

Deklarera och använda variabler

Ditt första program skrev ut string "Hello World!" på skärmen.

Tips

När du utforskar C# (eller något programmeringsspråk) gör du misstag när du skriver kod. -kompilatorn hittar dessa fel och rapporterar dem till dig. När utdata innehåller felmeddelanden bör du titta närmare på exempelkoden och koden i det interaktiva fönstret för att se vad som ska åtgärdas. Den här övningen hjälper dig att lära dig strukturen för C#-kod.

Ditt första program är begränsat till att skriva ut ett meddelande. Du kan skriva mer användbara program med hjälp av variabler. En variabel är en symbol som du kan använda för att köra samma kod med olika värden. Vi provar! Börja med följande kod:

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

Den första raden deklarerar en variabel, aFriend, och tilldelar den ett värde, "Bill". Den andra raden skriver ut namnet.

Du kan tilldela olika värden till valfri variabel som du deklarerar. Du kan ändra namnet till en av dina vänner. Lägg till dessa två rader i föregående interaktiva fönster efter den kod som du redan har lagt till. Se till att du behåller deklarationen för variabeln aFriend och dess inledande tilldelning.

Viktig

Ta inte bort deklarationen för aFriend. Lägg till följande kod i slutet av föregående interaktiva fönster:

aFriend = "Maira";
Console.WriteLine(aFriend);

Observera att samma kodrad skriver ut två olika meddelanden, baserat på värdet som lagras i variabeln aFriend.

Du kanske märker att ordet "Hello" saknades i de två senaste meddelandena. Vi fixar det nu. Ändra raderna som skriver ut meddelandet till följande kod:

Console.WriteLine("Hello " + aFriend);

Välj Kör igen för att se resultatet.

Du har använt + för att bygga strängar från -variabler och konstanta -strängar. Det finns ett bättre sätt. Du kan placera en variabel mellan { och } tecken för att be C# att ersätta texten med variabelns värde.

Den här processen kallas Stränginterpolation.

Om du lägger till en $ innan strängens inledande citattecken kan du inkludera variabler, till exempel aFriend, inuti strängen mellan klammerparenteser. Prova:

Välj Kör igen för att se resultatet. I stället för "Hello {aFriend}" ska meddelandet vara "Hello Maira".

Console.WriteLine($"Hello {aFriend}");

Arbeta med strängar

Din senaste redigering var vår första titt på vad du kan göra med strängar. Nu ska vi utforska mer.

Du är inte begränsad till en enda variabel mellan klammerparenteserna. Prova följande kod:

string firstFriend = "Maria";
string secondFriend = "Sage";
Console.WriteLine($"My friends are {firstFriend} and {secondFriend}");

Strängar är mer än en samling bokstäver. Du hittar längden på en sträng med hjälp av Length. Length är en egenskap av en sträng och returnerar antalet tecken i strängen. Lägg till följande kod längst ned i det interaktiva fönstret:

Console.WriteLine($"The name {firstFriend} has {firstFriend.Length} letters.");
Console.WriteLine($"The name {secondFriend} has {secondFriend.Length} letters.");

Tips

Nu är ett bra tillfälle att utforska på egen hand. Du har lärt dig att Console.WriteLine() skriver text på skärmen. Du har lärt dig hur du deklarerar variabler och sammanfogar strängar tillsammans. Experimentera i det interaktiva fönstret. Fönstret har en funktion som heter IntelliSense som ger förslag på vad du kan göra. Skriv en . efter d i firstFriend. Du ser en lista med förslag på egenskaper och metoder som du kan använda.

Du har använt en metod, Console.WriteLine, för att skriva ut meddelanden. En metod är ett kodblock som implementerar en åtgärd. Den har ett namn så att du kan komma åt det.

Trimma

Anta att dina strängar har blanksteg i början eller slutet som du inte vill visa. Du vill trimma mellanrummen från strängarna. Metoden Trim och de relaterade metoderna TrimStart och TrimEnd gör det arbetet. Du kan använda dessa metoder för att ta bort inledande och avslutande blanksteg. Prova följande kod:

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}]");

Hakparenteserna [ och ] hjälpa till att visualisera vad metoderna Trim, TrimStart, och TrimEnd gör. Hakparenteserna visar var tomt utrymme börjar och slutar.

Det här exemplet befäster ett par viktiga begrepp för att arbeta med strängar. Metoderna som manipulerar strängar returnerar nya strängobjekt i stället för att göra ändringar på plats. Du kan se att varje anrop till någon av de Trim metoderna returnerar en ny sträng men inte ändrar det ursprungliga meddelandet.

Ersätta

Det finns andra metoder som kan användas med en sträng. Du har till exempel förmodligen använt ett sök- och ersätt-kommando i en redigerare eller ordbehandlare tidigare. Metoden Replace gör något liknande i en sträng. Den söker efter en delsträng och ersätter den med annan text. Metoden Replace tar två parametrar. Dessa parametrar är strängarna mellan parenteserna. Den första strängen är den text som ska sökas efter. Den andra strängen är den text som den ska ersättas med. Prova själv. Lägg till den här koden. Skriv in den för att se tipsen när du börjar skriva .Re efter sayHello variabeln:

string sayHello = "Hello World!";
Console.WriteLine(sayHello);
sayHello = sayHello.Replace("Hello", "Greetings");
Console.WriteLine(sayHello);

Två andra användbara metoder gör en sträng med stora bokstäver eller små bokstäver. Prova följande kod. Skriv in det för att se hur IntelliSense ger tips när du börjar skriva To:

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

Söksträngar

Den andra delen i en sök och ersätt--åtgärd är att hitta text i en sträng. Du kan använda metoden Contains för sökning. Den anger om en sträng innehåller en delsträng inuti den. Prova följande kod för att utforska Contains:

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

Metoden Contains returnerar ett booleskt värde som anger om strängen du sökte efter hittades. En boolesk lagrar antingen ett true eller ett false värde. När de visas som textutdata är de skrivna med versaler: True respektive False. Du lär dig mer om booleska värden i en senare lektion.

Utmaning

Det finns två liknande metoder, StartsWith och EndsWith som också söker efter understrängar i en sträng. Dessa metoder hittar en delsträng i början eller slutet av strängen. Försök att ändra föregående exempel för att använda StartsWith och EndsWith i stället för Contains. Sök efter "Du" eller "goodbye" i början av en sträng. Sök efter "hello" eller "goodbye" i slutet av en sträng.

Not

Var uppmärksam på skiljetecken när du testar texten i slutet av strängen. Om strängen slutar med en punkt måste du söka efter en sträng som slutar med en punkt.

Du bör få true för att börja med "Du" och sluta med "hello" och false för att börja med eller sluta med "goodbye".

Kom du på något som liknar följande (expandera för att se svaret):

:::code language="csharp" interactive="try-dotnet-method" source="./snippets/HelloWorld/Program.cs" id="Challenge":::

Du har slutfört självstudiekursen i C# "Hello C#". Du kan välja självstudien Nummer i C# för att starta nästa interaktiva självstudie, eller så kan du gå till .NET-webbplats för att ladda ned .NET SDK, skapa ett projekt på datorn och fortsätta koda. Avsnittet "Nästa steg" tar dig tillbaka till de här självstudierna.

För ytterligare läsning om string-typ: