一个方法接受大约7个字符串参数,并且它们需要被检查为null所有这些参数的基本方法是简单的!string.IsNullOrWhitespace(param1)以及同样有更好或更聪明的方法吗?另外,如果有帮助,我可以将参数包装在一个对象中!
如果任何 null将是一个假的你:
bool CheckAnyNull(params string[] strs)
{
foreach (var str in strs)
{
if (strs.IsNullOrWhiteSpace(str))
return true;
}
return false;
}
Run Code Online (Sandbox Code Playgroud)
如果你想检查它们是否全部 null:
bool CheckAllNull(params string[] strs)
{
foreach (var str in strs)
{
if (!strs.IsNullOrWhiteSpace(str))
return false;
}
return true;
}
Run Code Online (Sandbox Code Playgroud)
如果您想要特定数量的null字符串:
int CheckNullCount(params string[] strs)
{
int count;
foreach (var str in strs)
{
if (strs.IsNullOrWhiteSpace(str))
count++;
}
return count;
}
Run Code Online (Sandbox Code Playgroud)
然后可以像这样调用所有这些:
CheckAnyNulls(str1, str2, str3, str4, str5, str6, str7);
CheckAllNulls(str1, str2, str3, str4, str5, str6, str7);
int nullStrs = CheckNullCount(str1, str2, str3, str4, str5, str6, str7);
Run Code Online (Sandbox Code Playgroud)
要么:
var strs = new string[7];
// populate the strs array.
CheckAnyNulls(strs);
CheckAllNulls(strs);
int nullStrs = CheckNullCount(strs);
Run Code Online (Sandbox Code Playgroud)