Відповіді:
Так, безліч. Скіп робить те, що ви хочете:
contents.Skip(1)
Однак результат - IEnumerable <T>, якщо ви хочете отримати масив:
contents.Skip(1).ToArray()
Наступне було б еквівалентно вашому forциклу:
foreach (var item in contents.Skip(1))
Message += item;
var item??
contentsмасив у новий екземплярArraySegment<>структури. У той час над відповіддю було написано, що не було особливо корисним, але з .NET 4.5 зArraySegment<>інвентаремIList<>,IReadOnlyList<>і їх базових інтерфейсів ( в тому числіIEnumerable<>), так що ви можете, наприклад , передатиArraySegment<>вstring.Join.