Как проверить диапазон массива, содержащего нули? - PullRequest
0 голосов
/ 06 июля 2011

У меня есть целочисленный массив типа {1,2,3,4,5,0,0,0,0,0,2,3,4,5,7,8,0,0,0,0, 0,1}

Я хочу проверить, все ли элементы с 5-го по 9-й в массиве равны нулю.

следующий код, который я пробовал ...

if (Enumerable.Range(vHisto[i],vHisto[ i + 30]).Contains(0))
{
    x = i+30;
    break;
}

vHisto - список, который содержит несколько целых чисел для проверки, как в примере.

Ответы [ 2 ]

5 голосов
/ 21 июля 2011

Всегда Linq. Всегда.

var sixThroughTenAreZero = new int[] {1,2,3,4,5,0,0,0,0,0,2,3}
                                    .Skip(5)
                                    .Take(5)
                                    .All(x => x == 0);
0 голосов
/ 06 июля 2011

Вы можете преобразовать целочисленный массив в строку, а затем использовать подстроку.

 int[] arr = {0,1,2,3,0,1};
 string results = string.Join("",arr.Select(i => i.ToString()).ToArray());

 if(results.Substring(4,9).equals("00000"))
{

}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...