Вставка в массив строк
От: AlexDP Украина  
Дата: 02.02.12 12:55
Оценка:
Есть массив/список строк.

Хочется после каждого 10-го єлемента вставить спец. строку.

Как-то с помощью linq єто можно сделать/преобразовать.

Просто интересно.

Обойтись циклом без linq — не предлагать.
Re: Вставка в массив строк
От: TK Лес кывт.рф
Дата: 02.02.12 13:05
Оценка: 3 (1)
Здравствуйте, 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>()));
Если у Вас нет паранойи, то это еще не значит, что они за Вами не следят.
Re: Вставка в массив строк
От: Lloyd Россия  
Дата: 02.02.12 13:09
Оценка: 3 (1)
Здравствуйте, AlexDP, Вы писали:

ADP>Обойтись циклом без linq — не предлагать.


lines.SelectMany((s, i) => i%10 == 0 ? new[] {s, null} : new[] {s})


Но лучше обойтись циклом без linq.
Re[2]: Вставка в массив строк
От: Lloyd Россия  
Дата: 02.02.12 13:11
Оценка:
Здравствуйте, 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>


А я думал, что у меня неэффективное решение.
Re[3]: Вставка в массив строк
От: TK Лес кывт.рф
Дата: 02.02.12 19:01
Оценка:
Здравствуйте, Lloyd, Вы писали:

L>А я думал, что у меня неэффективное решение.


главное, что компилируется
Если у Вас нет паранойи, то это еще не значит, что они за Вами не следят.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.