2010-04-09 21 views

Respuesta

181

Sí, Enumerable.Skip hace lo que quiere:

contents.Skip(1) 

Sin embargo, el resultado es un IEnumerable < T>, si usted desea conseguir un uso matriz:

contents.Skip(1).ToArray() 
+0

También es posible envolver el archivo 'contents' y en una nueva instancia de la estructura 'ArraySegment <>'. En el momento en que se escribió la respuesta anterior, eso no fue particularmente útil, pero desde .NET 4.5 el 'ArraySegment <>' implementa 'IList <>', 'IReadOnlyList <>' y sus interfaces base (incluyendo 'IEnumerable <>') , por lo que puede, por ejemplo, pasar un 'ArraySegment <>' a 'string.Join'. –

+0

Por mucho que odie a Linq, decidí que puedo tolerar esto, solo porque se ejecuta en un constructor estático, una vez por el inicio de la aplicación, por lo que la sobrecarga del rendimiento no existe. – Krythic

6

La siguiente sería equivalente a su bucle for:

foreach (var item in contents.Skip(1)) 
    Message += item; 
+1

¿quisiste _'var item'_ ?? – Joe

Cuestiones relacionadas