Kontrolstrukturer og metoder i C#
Computerspace · FGU · Programmering i C#
🔀 Hvad er kontrolstrukturer og metoder i C#?
C# har moderne kontrolstrukturer der giver ren og læsbar kode, inklusiv kraftfulde switch expressions fra C# 8.
Betingelser:
```csharp
int alder = 18;
// Klassisk if/else
if (alder >= 18) {
Console.WriteLine("Myndig");
} else if (alder >= 15) {
Console.WriteLine("Teenager");
} else {
Console.WriteLine("Barn");
}
// Switch expression (C# 8+) – mere kompakt
string kategori = alder switch {
>= 18 => "Myndig",
>= 15 => "Teenager",
_ => "Barn" // _ er default/wildcard
};
```
Løkker:
```csharp
// For-løkke
for (int i = 0; i < 5; i++) {
Console.WriteLine(i);
}
// Foreach – til collections
var frugter = new List<string> { "Æble", "Banan", "Appelsin" };
foreach (var frugt in frugter) {
Console.WriteLine(frugt);
}
// While
int x = 0;
while (x < 5) { x++; }
```
Metoder:
```csharp
// Standard metode
int Add(int a, int b) {
return a + b;
}
// Expression-bodied method (kompakt)
int Multiply(int a, int b) => a * b;
// Optional parameters
void Greet(string navn, string hilsen = "Hej") {
Console.WriteLine($"{hilsen}, {navn}!");
}
Greet("Anna"); // "Hej, Anna!"
Greet("Bo", "Goddag"); // "Goddag, Bo!"
// Named arguments
Greet(hilsen: "Hej igen", navn: "Carla");
```
---
🎓 Læringsmål for Kontrolstrukturer og metoder i C#
Læringsmål
- Bruge if/else og den moderne switch expression (C# 8+)
- Implementere for, while og foreach løkker til iteration
- Definere metoder med parametre, returtyper og optional parameters
- Skrive kompakte metoder med expression-bodied syntax (=>)
Sådan kan du arbejde med emnet
- Hvad er forskellen på switch statement og switch expression?
- Hvornår bruger man foreach vs. for?
- Hvad er optional parameters i C#?
- Hvad betyder => i en metode?
⚠️ Typiske fejl at undgå
- Glemmer break i klassisk switch – moderne switch expressions behøver det ikke
- Sammenligner strings med == – i C# virker == korrekt for strings (value equality)
- Uendelig while-løkke – sørg for betingelsen kan blive falsk
---
💡 Tips til at komme i gang
- Brug switch expressions til at erstatte lange if/else-kæder
- Øv dig i expression-bodied methods – de gør koden mere kompakt og læsbar
- Brug string interpolation:
$"Hej {navn}"i stedet for string concatenation
Øv dette emne med AI — quizzer, forklaringer og feedback tilpasset dit niveau.
Prøv Fagportalen gratis