2009-09-29 7 views
9

Mögliche Duplizieren:
Checking for string contents? string Length Vs Empty StringIn .NET, was ist am besten, mystring.Length == 0 oder mystring == string.Empty?

In .NET, die am besten ist,

if (mystring.Length == 0) 

oder

if (mystring == string.Empty) 

Es scheint, dass diese die gleiche Wirkung haben würde , aber was wäre besser, beh ind die Szenen?

+8

Gibt es einen funktionalen Grund Sie zu prüfen, mache ich nicht String.IsNullOrEmpty (mystring)? – JustLoren

+0

http://stackoverflow.com/questions/151472/what-is-the-difference-between-string-empty-and, http://stackoverflow.com/questions/810442/whats-the-most-efficient-way -zu-bestimmen-ob-ein-nicht-getrimmter-string-ist-leer-ich – womp

+0

Ich wusste es bis jetzt erst nicht! :-) Woot .... – Matt

Antwort

42

Ich ziehe

String.IsNullOrEmpty(myString) 

Gerade falls es einen Nullwert enthält.

+2

String.IsNullOrEmpty (mystring) –

+0

Ich bevorzuge 'string.IsNullOrEmpty' weil' string' immer ein korrekter Alias ​​für 'System.String' ist und deshalb mit den anderen" common types "konsistent ist. (Obwohl eine andere "Zeichenfolge" im Umfang wäre nur albern.) –

4

Der Unterschied ist so klein, ich würde es unbedeutend betrachten (die Länge Eigenschaft auf einer Zeichenfolge nicht berechnet - es ist ein fester Wert).

9

Verwenden Sie die eine, die am meisten Sinn macht für Sie, logisch. Der Unterschied in der Leistung ist bedeutungslos, also ist die "beste" Option jene, die Sie nächstes Jahr verstehen werden, wenn Sie auf diesen Code zurückblicken.

Meine persönliche Präferenz ist zu verwenden:

if(string.IsNullOrEmpty(mystring)) 

Ich ziehe diese, da sie gegen null prüft auch, was ein häufiges Problem ist.

2

Solange die Zeichenfolge nicht NULL-Verweis ist dann ist es nicht wirklich, aber in dem Fall aus, daß es weder funktioniert und Sie können string.IsNullOrEmpty(mystring);

Verwandte Themen