Есть массив/список строк.
Хочется после каждого 10-го єлемента вставить спец. строку.
Как-то с помощью linq єто можно сделать/преобразовать.
Просто интересно.
Обойтись циклом без linq — не предлагать.
Здравствуйте, AlexDP, Вы писали:
ADP>Как-то с помощью linq єто можно сделать/преобразовать.
ADP>Просто интересно.
Как-то так:
var list = Enumerable.Range(0, 100).
Select(i => i.ToString()).
SelectMany((s, n) => Enumerable.Repeat(s, 1).Concat(n % 10 == 0 ? Enumerable.Repeat("-----", 1) : Enumerable.Empty<string>()));
Если у Вас нет паранойи, то это еще не значит, что они за Вами не следят.
Здравствуйте, AlexDP, Вы писали:
ADP>Обойтись циклом без linq — не предлагать.
lines.SelectMany((s, i) => i%10 == 0 ? new[] {s, null} : new[] {s})
Но лучше обойтись циклом без linq.
Здравствуйте, TK, Вы писали:
ADP>>Просто интересно.
TK>Как-то так:
TK>
TK>var list = Enumerable.Range(0, 100).
TK> Select(i => i.ToString()).
TK> SelectMany((s, n) => Enumerable.Repeat(s, 1).Concat(n % 10 == 0 ? Enumerable.Repeat("-----", 1) : Enumerable.Empty<string>()));
TK>
А я думал, что у меня неэффективное решение.
Здравствуйте, Lloyd, Вы писали:
L>А я думал, что у меня неэффективное решение.
главное, что компилируется
Если у Вас нет паранойи, то это еще не значит, что они за Вами не следят.