String

💡 Vad är String?

String är C-Sharp:s sätt att hantera text - ord, meningar, namn, meddelanden, allt som består av tecken!

Tänk dig att en string är som en rad med bokstäver på ett snöre. Du kan läsa texten, ändra den, söka i den, och mycket mer.

🎯 TL;DR

string = text och tecken. Använd citattecken: "Hej världen!". Perfekt för namn, meddelanden, och all text du vill visa eller bearbeta.

📋 Efter att ha läst detta kommer du att kunna

  • Skapa och arbeta med text i C-Sharp
  • Använda string interpolation för snygg kod
  • Manipulera text med inbyggda metoder
  • Jämföra och söka i text

🔧 Grundprinciper

Princip 1: Text inom citattecken

Allt inom "citattecken" blir en string.

Princip 2: Strings är oföränderliga

När du “ändrar” en string skapas faktiskt en ny.

Princip 3: Många användbara metoder

C-Sharp ger dig massa verktyg för att jobba med text.

💭 Tänk så här (Pseudokod)

💬 När du arbetar med text:


OM jag behöver visa text till användaren
  ELLER lagra namn, meddelanden, etc.
  ELLER bearbeta textdata
SÅ använd string

OM jag bara behöver Ett tecken
SÅ använd char istället

🚀 Enklaste implementering

💻 Så här skapar du din första string:


string name = "Marcus";
string message = "Hej världen!";
string empty = "";

📈 Från enkelt till avancerat

🟢 String interpolation (det snygga sättet!)


string name = "Marcus";
int age = 35;

// Gammalt, fult sätt:
Console.WriteLine("Läraren " + name + " är " + age + " år gammal");

// Nytt, snyggt sätt:
Console.WriteLine($"Läraren {name} är {age} år gammal");

🟡 Vanliga string-metoder


string text = "Hej Världen";

// Ändra stor/liten bokstav
Console.WriteLine(text.ToUpper());    // HEJ VÄRLDEN
Console.WriteLine(text.ToLower());    // hej världen

// Hitta delar av text
string part = text.Substring(0, 3);    // "Hej"
int length = text.Length;              // 11

// Ersätt text
string newText = text.Replace("Hej", "Hejdå");  // "Hejdå Världen"

// Sök i text
bool found = text.Contains("Värld"); // true
bool startsWith = text.StartsWith("Hej"); // true

🔴 Avancerat: StringBuilder och specialtecken


// För många ändringar - använd StringBuilder
using System.Text;
StringBuilder sb = new StringBuilder();
sb.Append("Hej ");
sb.Append("på ");
sb.Append("dig!");
string result = sb.ToString(); // "Hej på dig!"

// Specialtecken
string quotes = "Hon sa \"Hej då\"";     // Citattecken
string newLine = "Första raden\nAndra raden";   // Ny rad
string path = @"C:\Program Files\";         // Raw string

⚠️ Vanliga misstag

  • Misstag 1: Glömma citattecken

    • string name = Marcus; ❌ Fungerar inte!
    • string name = "Marcus"; ✅ Fungerar!
  • Misstag 2: Förväxla string och char

    • string letter = 'A'; ❌ char använder enkla citattecken
    • string text = "A"; ✅ string använder dubbla citattecken
  • Misstag 3: Glömma escape-tecken

    • string path = "C:\Program Files\"; ❌ Problem med \
    • string path = @"C:\Program Files\"; ✅ Använd @ för raw strings

🔍 Jämföra text


string name1 = "Marcus";
string name2 = "marcus";

bool same = name1 == name2;  // false (skiftlägeskänsligt)

// Ignorera stor/liten bokstav:
bool equal = name1.Equals(name2, StringComparison.OrdinalIgnoreCase); // true

📚 Sammanfattning

Viktiga punkter att komma ihåg:

  • String används för text och tecken
  • Använd dubbla citattecken: "text"
  • String interpolation: $"Hej {namn}!" är snyggast
  • Strängar är oföränderliga (immutable)
  • Många användbara metoder för textbearbetning

🎯 Övningar

  1. 🟢 Grundläggande: Skapa variabler för förnamn och efternamn, kombinera dem med string interpolation
  2. 🟡 Utmanande: Skriv kod som tar en mening och gör första bokstaven stor och resten små

😄 Obligatorisk dad joke

Varför är strängar så bra på att hålla ihop? För att de alltid vet hur man ska konkatenera! 🔗


Upp

Upp


Licens: Apache 2.0 | © 2023 Marcus Medina, Campus Mölndal. Alla rättigheter förbehållna.
Du får använda och modifiera detta verk enligt villkoren i Apache License, Version 2.0. Du får inte använda detta verk för kommersiella ändamål utan tillstånd från upphovsmannen.