Мне нужно прочитать последние 8 байтов из байтового массива. Прямо сейчас я делаю это так:
last8 = data.Reverse().Take(8).Reverse();
Есть ли лучший способ сделать это?
Используйте Array.Copy , например:
byte[] data = ...; byte[] last8 = new byte[8]; Array.Copy(data, data.Length-8, last8, 0, 8);
Как насчет этого:
var last8 = data.Skip(data.Length - 8);
Сохранит шаг обращения массива дважды.
Вы также можете использовать data.Skip(data.Count - 8) (если ваши данные уже перечислены - например, Array или List).
data.Skip(data.Count - 8)
Array
List