Присвоить массиву 2 значения массива 1, но с удаленным первым элементом

Вот пример кода:

int[] a = {0, 1, 2, 3, 4};
int[] b = new int[a.Length-1];
for (int i = 0; i < a.Length; i++)
{
    b[i] = a[i + 1];
}

Можно ли уменьшить его до одной строки?


Ответы (1 шт):

Автор решения: Sultanov Shamil

Можно 1 строчкой, используя System.Linq:

int[] a = {0, 1, 2, 3, 4};
int[] b = a.Skip(1).ToArray();

Либо статическим методом Array.Copy:

int[] a = {0, 1, 2, 3, 4};
int[] b = new int[a.Length-1];
Array.Copy(a, 1, b, 0, b.Length);
→ Ссылка