Asa*_*sad 6 c# string null-string
哪三个在这三个中更好?
string myString = "";
String.IsNullOrEmpty(myString);
vs
string myString = "";
if(myString.Length > 0 || myString != null)
vs
string myString = "";
if (m.Length > 0 | m != null)
Run Code Online (Sandbox Code Playgroud)
前者更清楚,但这些之间有任何性能差异吗?如果字符串从不为空,如果从文本框中取出,可能是空的但不是空的,该怎么办?
Mar*_*ell 18
好吧,问题中的版本:
if(myString.Length > 0 || myString != null)
Run Code Online (Sandbox Code Playgroud)
将肯定会更糟,因为你应该测试null 第一(未秒) -理想短路上null,这样你就不会尝试调用.Length.但一般来说我只是用string.IsNullOrEmpty.如果需要,您可以随时编写扩展方法以使其更简洁(您可以在null值上调用扩展方法).
static bool HasValue(this string s) {
return !string.IsNullOrEmpty(s);
}
Run Code Online (Sandbox Code Playgroud)