2017-02-13 7 views
-6

Является ли foreach loop проверять пустой индекс массива или он заканчивается на том индексе, где заканчиваются элементы? например, в индексе 0 массива существует элемент, а индекс 1 пуст, а затем в индексе 2 существует элемент, который является циклом foreach, проверяющим элемент в индексе 2 или заканчивающимся индексом 1?Asp.net foreach loop

+4

Это похоже на то, что вы могли проверить, запустив код самостоятельно. Я не знаю, зачем ты нам нужен. – mason

+0

Будет более понятным, если вы добавите пример –

+0

foreach успешно выполнит цикл всех элементов инициализированного массива. Если есть 0 элементов, он будет 0 раз. Это тоже то, что вы могли бы легко попробовать. Если массив равен NULL, он сломается. Вы тоже можете это проверить. – Forklift

ответ

-2

Позвольте мне объяснить, что foreach на самом деле.
Он выполняет итерацию по набору элементов внутри IEnumerable, чтобы, не пропуская ничего, даже если текущий элемент имеет значение null.

Если у вас есть массив с [5,2,24], элементы будут называться в Одер 5, 2, 24 и остановится после этого.

+0

Это не отвечает на вопрос. – mason

+0

@mason Не ответил ли «без пропусков» ответ? –

+0

Нет. Потому что это зависит от того, что вы подразумеваете, пропуская, когда элемент в определенном индексе пуст, или когда пустые элементы находятся в конце массива. – mason

0

Цикл foreach будет работать для длины массива. В вашем примере есть три элемента массива, но один из них пуст. Цикл foreach будет работать 3 раза по порядку индекса, 0 затем 1, затем 2.

+2

... и будет работать в порядке индекса. –

+0

правильный. Я понял, что это подразумевалось, но опять же, я думал, что foreach также подразумевает длину. Точка принята – SaggingRufus

+0

@mason Я никогда не думал об этом таким образом, в какой-то мере я вношу свой вклад в эту проблему! – SaggingRufus

-2

Цикл Foreach работает над значением, которое он содержит. ex: loop содержать = [1,2,3,5] затем циклы на основе количества данных