In C# zur Initialisierung eines Strings: string.Empty, String.Empty oder "" — was ist besser?
Hallo zusammen! Ich habe gerade angefangen, C# zu lernen, und bin auf eine Frage gestoßen, die mich sehr verwirrt. Wenn ich einen leeren String deklarieren muss, sehe ich in verschiedenen Codebeispielen drei Varianten:
string a = "";
string b = string.Empty;
string c = String.Empty;
Alle funktionieren gleich und erzeugen einen leeren String. Aber welche gilt aus Sicht von Stil, Leistung und Lesbarkeit als richtig? Ich habe gehört, dass "" jedes Mal ein neues Objekt erzeugen könnte, während string.Empty eine Konstante ist. Stimmt das? Oder sind das alles Vorurteile?
Mich interessiert auch, ob es einen Unterschied zwischen string.Empty und String.Empty gibt? Schließlich ist string ein Alias für System.String. Sind sie also äquivalent? Aber wenn ja, warum verwendet die C#-Community häufiger string.Empty?
Und zuletzt: Beeinflusst die Wahl die Leistung in Schleifen oder bei häufigen Zuweisungen? Zum Beispiel, wenn ich in einer Schleife von 100.000 Iterationen einen leeren String zuweise — gibt es einen messbaren Unterschied? Ich wäre sehr dankbar für eine ausführliche Erklärung mit Beispielen und Links zu offiziellen Quellen, falls möglich.