.NET 中是否有结合 String.IsNullOrEmpty 和 String.IsNullorWhiteSpace 的内置函数?
我可以轻松编写自己的,但我的问题是为什么没有 String.IsNullOrEmptyOrWhiteSpace 函数?
String.IsNullOrEmpty 是否首先修剪字符串?也许更好的问题是,String.Empty 是否符合空白?
.NET 中是否有结合 String.IsNullOrEmpty 和 String.IsNullorWhiteSpace 的内置函数?
我可以轻松编写自己的,但我的问题是为什么没有 String.IsNullOrEmptyOrWhiteSpace 函数?
String.IsNullOrEmpty 是否首先修剪字符串?也许更好的问题是,String.Empty 是否符合空白?
为什么没有 String.IsNullOrEmptyOrWhiteSpace
该函数称为string.IsNullOrWhiteSpace
:
指示指定的字符串是 null、空还是仅包含空白字符。
这不应该很明显吗?
String.IsNullOrWhiteSpace 会检查 null、Empty 或 WhiteSpace。
这些方法在进行测试之前有效地修剪字符串,因此“”将返回 true。
这是使用dotPeek的反编译方法。
[TargetedPatchingOptOut("Performance critical to inline across NGen image boundaries")]
public static bool IsNullOrEmpty(string value)
{
if (value != null)
return value.Length == 0;
else
return true;
}
/// <summary>
/// Indicates whether a specified string is null, empty, or consists only of white-space characters.
/// </summary>
///
/// <returns>
/// true if the <paramref name="value"/> parameter is null or <see cref="F:System.String.Empty"/>, or if <paramref name="value"/> consists exclusively of white-space characters.
/// </returns>
/// <param name="value">The string to test.</param>
public static bool IsNullOrWhiteSpace(string value)
{
if (value == null)
return true;
for (int index = 0; index < value.Length; ++index)
{
if (!char.IsWhiteSpace(value[index]))
return false;
}
return true;
}
是的,String.IsNullOrWhiteSpace
方法。
它检查字符串是否为空、空或仅包含空格字符,因此它包含该String.IsNullOrEmpty
方法的作用。