799 Stimmen

In C#, sollte ich string.Empty oder String.Empty oder "" verwenden, um eine Zeichenfolge zu intitialisieren?

In C# möchte ich einen String-Wert mit einer leeren Zeichenfolge initialisieren.

Wie soll ich das machen? Was ist der richtige Weg, und warum?

string willi = string.Empty;

oder

string willi = String.Empty;

oder

string willi = "";

oder was?

11voto

Jason Baker Punkte 180981

So gut wie jeder Entwickler wird wissen, was "" bedeutet. Ich persönlich bin das erste Mal auf String.Empty gestoßen und musste einige Zeit mit Google suchen, um herauszufinden, ob sie wirklich sind genau das Gleiche.

10voto

Quibblesome Punkte 24734

Jeder der oben genannten Punkte.

Es gibt viele, viele bessere Dinge, über die man schwadronieren kann. Zum Beispiel darüber, welche Farbe der Rinde eines Baumes am besten passt. Ich denke, ein vages Braun mit einem Hauch von süßem Moos.

7voto

Ich bevorzuge String.Empty, abgesehen von den anderen Gründen, um sicherzustellen, dass Sie wissen, was es ist und dass Sie nicht versehentlich den Inhalt entfernt haben, sondern vor allem für die Internationalisierung. Wenn ich eine Zeichenkette in Anführungszeichen sehe, muss ich mich immer fragen, ob es sich dabei um neuen Code handelt, der in eine Stringtabelle eingefügt werden sollte. Jedes Mal, wenn Code geändert/überprüft wird, muss man also nach "etwas in Anführungszeichen" suchen, und ja, man kann die leeren Strings herausfiltern, aber ich sage den Leuten, dass es gute Praxis ist, Strings nie in Anführungszeichen zu setzen, es sei denn, man weiß, dass sie nicht lokalisiert werden.

7voto

Dimitry Punkte 71

Niemand erwähnt, dass in VisualStudio String ist farblich anders als String codiert. Das ist wichtig für die Lesbarkeit. Auch Kleinbuchstaben ist in der Regel für vars und Typ, nicht eine große Sache, aber String.Empty ist eine Konstante und nicht eine var oder Typ verwendet.

7voto

zendar Punkte 13036

string ist ein Synonym für System.String Typ, Sie sind identisch.

Auch die Werte sind identisch: string.Empty == String.Empty == ""

Ich würde keine Zeichenkonstante "" im Code verwenden, sondern string.Empty o String.Empty - leichter zu erkennen, was der Programmierer meinte.

Zwischen string y String Ich mag Kleinschreibung string mehr, weil ich viele Jahre mit Delphi gearbeitet habe und der Delphi-Stil Kleinschreibung ist string .

Wenn ich also Ihr Chef wäre, würden Sie schreiben string.Empty

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X