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 citatteckenstring 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
- 🟢 Grundläggande: Skapa variabler för förnamn och efternamn, kombinera dem med string interpolation
- 🟡 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! 🔗