Вопросы с тегом «foreach»

foreach - это циклическая конструкция, которая выполняет заданный фрагмент кода для каждого элемента в списке / коллекции / массиве. В отличие от цикла for, цикл foreach не требует, чтобы кодировщик поддерживал переменную счетчика, чтобы избежать ошибок off-by-one (fencepost). Рекомендуется использовать, когда необходима простая итерация по всему массиву / списку / коллекции ,

10
Почему в нодлисте нет forEach?
Я работал над коротким скриптом для изменения <abbr>внутреннего текста элементов, но обнаружил, что у nodelistнего нет forEachметода. Я знаю, что nodelistэто не наследуется Array, но разве это не кажется forEachполезным методом? Есть конкретная проблема реализации я не в курсе , что мешает добавляющих forEachк nodelist? Примечание. Мне известно, что у …

6
Как проверить, является ли переменная массивом?… Или чем-то вроде массива
Я хочу использовать foreachцикл с переменной, но, например, эта переменная может быть разных типов NULL. Итак, прежде чем foreachя его протестирую: if(is_array($var)){ foreach($var as ... Но я понял, что это также может быть класс, реализующий Iteratorинтерфейс. Может, я слепой, но как проверить, реализует ли класс интерфейс? Есть что-то вроде is_aфункции …
90 php  arrays  foreach 

4
Почему List <T> .ForEach позволяет изменять свой список?
Если я использую: var strings = new List&lt;string&gt; { "sample" }; foreach (string s in strings) { Console.WriteLine(s); strings.Add(s + "!"); } the Addв foreachвыдает InvalidOperationException (Коллекция была изменена; операция перечисления может не выполняться), что я считаю логичным, поскольку мы вытаскиваем коврик из-под ног. Однако, если я использую: var strings …
90 c#  list  foreach 


3
Является ли это известной ловушкой C ++ 11 для циклов?
Представим, что у нас есть структура для хранения 3 двойников с некоторыми функциями-членами: struct Vector { double x, y, z; // ... Vector &amp;negate() { x = -x; y = -y; z = -z; return *this; } Vector &amp;normalize() { double s = 1./sqrt(x*x+y*y+z*z); x *= s; y *= s; …

5
Как выйти из цикла foreach в C #?
foreach (var name in parent.names) { if name.lastname == null) { Violated = true; this.message = "lastname reqd"; } if (!Violated) { Violated = !(name.firstname == null) ? false : true; if (ruleViolated) this.message = "firstname reqd"; } } Если нарушение истинно, я хочу немедленно выйти из foreachцикла. Как это …
88 c#  foreach 

10
Интеллектуальный способ удаления элементов из List <T> при перечислении в C #
У меня классический случай попытки удалить элемент из коллекции при его перечислении в цикле: List&lt;int&gt; myIntCollection = new List&lt;int&gt;(); myIntCollection.Add(42); myIntCollection.Add(12); myIntCollection.Add(96); myIntCollection.Add(25); foreach (int i in myIntCollection) { if (i == 42) myIntCollection.Remove(96); // The error is here. if (i == 25) myIntCollection.Remove(42); // The error is here. } …
87 c#  list  foreach  enumeration 

6
Как работает диапазон на основе для простых массивов?
В C ++ 11 вы можете использовать диапазон for, который действует как foreachдругие языки. Он работает даже с простыми массивами C: int numbers[] = { 1, 2, 3, 4, 5 }; for (int&amp; n : numbers) { n *= 2; } Как он узнает, когда остановиться? Работает ли он только …
87 c++  arrays  foreach  c++11 

7
Как циклы foreach работают в C #? [закрыто]
Закрыто . Этот вопрос должен быть более конкретным . В настоящее время он не принимает ответы. Хотите улучшить этот вопрос? Обновите вопрос, чтобы он фокусировался только на одной проблеме, отредактировав этот пост . Закрыт 5 месяцев назад . Уточните этот вопрос Какие типы классов могут использовать foreachциклы?
86 c#  foreach 

3
forEach против forEachOrdered в Java 8 Stream
Я понимаю, что эти методы различаются порядком выполнения, но во всех моих тестах я не могу добиться другого выполнения заказа. Пример: System.out.println("forEach Demo"); Stream.of("AAA","BBB","CCC").forEach(s-&gt;System.out.println("Output:"+s)); System.out.println("forEachOrdered Demo"); Stream.of("AAA","BBB","CCC").forEachOrdered(s-&gt;System.out.println("Output:"+s)); Выход: forEach Demo Output:AAA Output:BBB Output:CCC forEachOrdered Demo Output:AAA Output:BBB Output:CCC Приведите примеры, когда два метода будут давать разные результаты.

6
В каком порядке C # для каждого цикла перебирает List <T>?
Мне было интересно узнать, в каком порядке цикл foreach в C # проходит через System.Collections.Generic.List&lt;T&gt;объект. Я нашел еще один вопрос по той же теме, но не думаю, что он удовлетворит меня ответом на мой вопрос. Кто-то заявляет, что порядок не определен. Но, как утверждает кто-то другой, порядок обхода массива фиксирован …

10
Является ли цикл for на основе диапазона устаревшим для многих простых алгоритмов?
Решение алгоритма: std::generate(numbers.begin(), numbers.end(), rand); Решение для цикла на основе диапазона: for (int&amp; x : numbers) x = rand(); Зачем мне использовать более подробные std::generateциклы for на основе диапазона в C ++ 11?
81 c++  algorithm  stl  c++11  foreach 

12
Итерировать многомерный массив с помощью вложенного оператора Foreach
Я думаю, что это может быть довольно простой вопрос, но я еще не смог его понять. Если у меня есть такой двумерный массив: int[,] array = new int[2,3] { {1, 2, 3}, {4, 5, 6} }; Какой лучший способ перебрать каждое измерение массива с помощью вложенного оператора foreach ?
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.