正在使用string.IsNullOrEmpty(string)
当检查一个字符串时被认为是不好的做法string.IsNullOrWhiteSpace(string)
在 .NET 4.0 及更高版本中?
最佳实践是选择最合适的一种。
.Net Framework 4.0 Beta 2 有一个新的 IsNullOrWhiteSpace() 方法
将 IsNullOrEmpty() 方法概括为还包含其他白色的字符串
除了空字符串之外的空格。
术语“空白”包括所有在计算机上不可见的字符
屏幕。例如,空格、换行符、制表符和空字符串为白色
空格字符*.
参考 :Here
对于性能来说,IsNullOrWhiteSpace 并不理想,但也可以
好的。方法调用将导致较小的性能损失。
此外,IsWhiteSpace 方法本身具有一些间接方法,可以
如果您不使用 Unicode 数据,则将其删除。一如既往,为时过早
优化可能是邪恶的,但它也很有趣。
参考 :Here
检查源代码(参考源.NET Framework 4.6.2)
是否为空
[Pure]
public static bool IsNullOrEmpty(String value) {
return (value == null || value.Length == 0);
}
为空或空白
[Pure]
public static bool IsNullOrWhiteSpace(String value) {
if (value == null) return true;
for(int i = 0; i < value.Length; i++) {
if(!Char.IsWhiteSpace(value[i])) return false;
}
return true;
}
Examples
string nullString = null;
string emptyString = "";
string whitespaceString = " ";
string nonEmptyString = "abc123";
bool result;
result = String.IsNullOrEmpty(nullString); // true
result = String.IsNullOrEmpty(emptyString); // true
result = String.IsNullOrEmpty(whitespaceString); // false
result = String.IsNullOrEmpty(nonEmptyString); // false
result = String.IsNullOrWhiteSpace(nullString); // true
result = String.IsNullOrWhiteSpace(emptyString); // true
result = String.IsNullOrWhiteSpace(whitespaceString); // true
result = String.IsNullOrWhiteSpace(nonEmptyString); // false
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)