StringBuilder, Vergleiche und Hinweise zu Kulturen
Erstellen Sie mit StringBuilder effizient große Textmengen und vergleichen Sie Strings sicher mit StringComparison und kulturabhängigen APIs.
StringBuilder, Vergleiche und Hinweise zu Kulturen ist eine kostenlose C# Academy-Lektion auf CoddyKit. Dies ist Lektion 2 von 3. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des C# Academy-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der C# Academy-Kurs umfasst insgesamt 3 Lektionen.
Übersicht
Ziel: Erstellen Sie große Strings effizient und vergleichen Sie Text korrekt.
- StringBuilder für viele Anhängevorgänge
- Vergleich mit Ordinal und Culture
- Prüfungen ohne Berücksichtigung der Groß-/Kleinschreibung
Grundlagen von StringBuilder
Verwenden Sie StringBuilder bei Verkettungen in Schleifen, um Speicherreservierungen zu reduzieren.
using System;
using System.Text;
public class Program
{
public static void Main(string[] args)
{
// Build a small CSV with many appends
StringBuilder sb = new StringBuilder();
sb.Append("id,name").AppendLine();
for (int i = 1; i <= 3; i = i + 1)
{
sb.Append(i).Append(",Item ").Append(i).AppendLine();
}
string csv = sb.ToString();
Console.WriteLine(csv);
}
}
StringBuilder oder +
Richtlinie:
- Verwenden Sie "a" + b + c für wenige Teile.
- Verwenden Sie StringBuilder für Schleifen oder viele Anhängevorgänge.
- Verwenden Sie innerhalb der Schleife dieselbe Builder-Instanz erneut.
Prüfung ohne Berücksichtigung der Groß-/Kleinschreibung
Für Bezeichner (z. B. Dateinamen und Schlüssel) sollten Sie OrdinalIgnoreCase bevorzugen, um Überraschungen durch die Kultur zu vermeiden.
using System;
public class Program
{
public static void Main(string[] args)
{
string a = "file";
string b = "FILE";
bool ordEq = string.Equals(a, b, StringComparison.OrdinalIgnoreCase);
bool ord = string.Equals(a, b, StringComparison.Ordinal);
Console.WriteLine("OrdinalIgnoreCase: " + ordEq); // true
Console.WriteLine("Ordinal (case-sensitive): " + ord); // false
}
}
Beispiel für Kulturabhängigkeit
Die Kultur beeinflusst die Ergebnisse (z. B. beim türkischen I). Legen Sie dies ausdrücklich fest: Verwenden Sie InvariantCulture für Daten und Bezeichner, für die Benutzeroberfläche dagegen die Kultur des Benutzers.
using System;
using System.Globalization;
public class Program
{
public static void Main(string[] args)
{
string lowerI = "i";
// Culture-sensitive uppercasing
string trUpper = lowerI.ToUpper(new CultureInfo("tr-TR"));
string invUpper = lowerI.ToUpper(CultureInfo.InvariantCulture);
Console.WriteLine("tr-TR upper(i) = " + trUpper); // "İ"
Console.WriteLine("Invariant upper(i) = " + invUpper); // "I"
}
}
Tipps und Auswahl
Tipps:
- Halten Sie StringBuilder innerhalb der Schleife vor; rufen Sie .ToString() einmal am Ende auf.
- Wählen Sie OrdinalIgnoreCase für Schlüssel, IDs und Dateinamen.
- Wählen Sie CurrentCulture für Text, der Benutzern angezeigt wird.
Standard für Vergleiche
Zusammenfassung
Zusammenfassung: Verwenden Sie StringBuilder für viele Anhängevorgänge; wählen Sie OrdinalIgnoreCase für Bezeichner; verwenden Sie kulturabhängige APIs für Text der Benutzeroberfläche.
Häufig gestellte Fragen
Ist die Lektion „StringBuilder, Vergleiche und Hinweise zu Kulturen“ kostenlos?
Ja — der vollständige Text von „StringBuilder, Vergleiche und Hinweise zu Kulturen“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des C# Academy-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der C# Academy-Kurs umfasst insgesamt 3 Lektionen.
Was lerne ich in „StringBuilder, Vergleiche und Hinweise zu Kulturen“?
Erstellen Sie mit StringBuilder effizient große Textmengen und vergleichen Sie Strings sicher mit StringComparison und kulturabhängigen APIs. Du übst C# Academy mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.
Brauche ich Erfahrung, um C# Academy zu starten?
Keine Vorkenntnisse erforderlich. C# Academy auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 2 von 3.
Wie lange dauert die Lektion „StringBuilder, Vergleiche und Hinweise zu Kulturen“?
Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.
Kann ich in dieser C# Academy-Lektion Code schreiben und ausführen?
Ja. Jede C# Academy-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.
Alle Lektionen in diesem Kurs
- Strings und Text: Unveränderlichkeit, Interpolation, Verbatim, StringBuilder, Vergleich
- StringBuilder, Vergleiche und Hinweise zu Kulturen
- char, Unicode-Grundlagen, einfaches Parsen/Formatieren