это двойной цикл с изменением стартового индекса при каждой внутренней итерации?
public static IEnumerable<int> FindIndices<T>(this IEnumerable<T> items, Func<T, bool> predicate) { int i = 0; foreach (var item in items) { if (predicate(item)) { yield return i; } i++; } }
Обсуждают сегодня