我想检查指定索引后数组中是否存在空字符串。
假设我有这个数组:
string[] values = {"1", "2", "2", "4", "", "", ""};
我想检查索引3中是否存在空值(值为4)。我想这样做而不将它分成两个不同的字符串数组。
更具体地说,我使用名为files
的数组的示例string[] files;
如果有空值,我想从数组索引8到数组索引28进行检查。
答案 0 :(得分:3)
您可以使用LINQ:
files.Skip(index).Any(s => s == string.Empty);
答案 1 :(得分:0)
你可以使用for循环。试试这个:
for(int i = specifiedIndex; i < array.Length; i++)
{
if(array[i].Equals(""))
return true;
}
return false;
如果索引处或之后的任何值为空,则返回true。如果它在没有找到的情况下到达终点,则返回false。
您可以根据自己的需要进行调整。你不一定要循环数组的结尾,也可以将结束条件设置为指定的索引,比如说你想检查索引5和10之间的空字符串,但是不关心是否有之前或之后的任何内容。
答案 2 :(得分:0)
使用LINQ: -
string[] Values = { "1", "2", "2", "4", "", "", "" };
int specifiedIndex = 3;
var query1 = Values.Skip(specifiedIndex).Select((v, index) => new { v, index }).Where(x => x.v == String.Empty).Select(z => z.index + specifiedIndex);
foreach (var val in query1)
{
Console.WriteLine(val);
}