你是要判断一个字符串数组中是否包含空引用或空字符串的元素吗?
string[] arrStrings = {"0", "1", "2", "3", "4", "5", "......"}; //包含空字符串或NULL返回True bool hasNullOrEmptyElement = Array.Exists(arrStrings, string.IsNullOrEmpty);
string [] strlist; ...... int i=0; foreach (var item in strlist) { if(item!=null&& item!=""&&item!=string.Empty){ i++; } } if(i>49){ return true; }else { return false; }
我不太懂你的意思是不是这样 里面只要有一个元素为空那么该方法返回null 随便写的你自己斟酌
如果数组中存在Null或者 “”(空字符串),那么这个遍历的次数还是会存在(还是会 i=50)这是不对的! 如果要通过遍历多少次判断这个字符串数组中是否有元素为“”或null那么就要统计到循环的次数(排除“”或Null 元素)与数组的元素个数相比较(比较数值大小,遍历次数==数组.length)
@DotNet码农: 把&&改成||不就行了 成立就返回跳出
@iEvent: 可以的 linq 有更简单的解决方案昨天晚上没有环境随便写的
利用Linq:
string[] arrStrings = {"0", "1", "2", "3", "4", "5", "......"}; //有空就返回true var hasNullOrEmpty=stringArr.Any(x=>string.IsNullOrEmpry(x))
你这代码是错的!
@DotNet码农:
string[] arr1=new[] { "1", "2", "3", "4", "5" };
bool any = arr1.Any(x => string.IsNullOrEmpty(x));
Console.WriteLine(any);
Console.ReadKey(); 这是对的亲
@DotNet码农: 哎~如果这种错误都搞不定,我还能说什么呢...
string.IsNullOrWhiteSpace可以吗