Zusammenfassung – Nullsicherheit
Teil des Abschnitts Logik & Ablauf der C#-Journey von Coddy. Lektion 35 von 66.
Aufgabe
EinfachErstelle eine Methode namens SafelyProcessData, die zwei Parameter entgegennimmt:
- Eine Zeichenfolge
name, die null sein kann - Eine nullable Ganzzahl
age
Die Methode sollte:
- Überprüfen, ob
namenull oder leer ist, und dabei geeignete Muster zur Nullprüfung verwenden - Überprüfen, ob
ageeinen Wert enthält - Eine formatierte Zeichenfolge wie folgt zurückgeben:
- Wenn
namenull ist, gib "No name provided" zurück - Wenn
nameleer ist oder nur aus Leerzeichen besteht, gib "Invalid name" zurück - Wenn
agenull ist, gib "Name: [name], Age: Unknown" zurück - Andernfalls gib "Name: [name], Age: [age]" zurück
- Wenn
Stelle sicher, dass du Techniken der defensiven Programmierung verwendest, um alle möglichen Null-Szenarien zu behandeln!
Probier es selbst
using System;
class Program
{
// Implementieren Sie die SafelyProcessData-Methode hier
static void Main(string[] args)
{
string nameInput = Console.ReadLine();
string ageInput = Console.ReadLine();
// Behandeln Sie den Fall, in dem die Eingabe der String "null" ist
string name = nameInput == "null" ? null : nameInput;
int? age = null;
if (ageInput != "null")
{
age = int.Parse(ageInput);
}
string result = SafelyProcessData(name, age);
Console.WriteLine(result);
}
}Alle Lektionen in Logik & Ablauf
1Mehrdimensionale Arrays
Grundlagen 2D-Arrays2D-Arrays deklarieren und initialisierenAuf Elemente von 2D-Arrays zugreifenVerschachtelte Schleifen mit 2D-ArraysGezackte ArraysHäufige MatrixoperationenZusammenfassung – Mehrdimensionale Arrays4Techniken zur Ablaufsteuerung
Frühe RückgabenWächterklauselnSprunganweisungen (goto)Break und ContinueVerschachtelte Bedingungen abflachen7Logische Operatoren – Fortgeschritten
KurzschlussauswertungBedingte logische OperatorenOperatorrangfolgeRückblick – Erweiterte Operatoren2Fortgeschrittene Entscheidungslogik
Mehrere BedingungenKomplexe boolesche LogikVergleich: If vs. SwitchVerschachtelte Switch-AnweisungenRückblick – Fortgeschrittene Entscheidungen5Fehlerbehandlung mit Exceptions
Grundlagen von Try-CatchException-TypenMehrere Catch-BlöckeArbeiten mit DateienFinally-BlockUsing im Vergleich zu Try-FinallyBenutzerdefinierte ExceptionsZusammenfassung – Fehlerbehandlung3Schleifenverbesserungen
SchleifenleistungKomplexe IterationJeder SchleifentypSchleifen refaktorierenRückblick – Optimierte Schleifen6Behandlung von Nullwerten
Grundlagen von NullreferenzenNullable WerttypenMuster zur NullprüfungDefensive ProgrammierungZusammenfassung – NullsicherheitÜbe selbstständig: Online-C#-Compiler