最佳答案
假设我有一个序列。
IEnumerable<int> sequence = GetSequenceFromExpensiveSource();
// sequence now contains: 0,1,2,3,...,999999,1000000
获取序列并不便宜,而且是动态生成的,我希望只迭代它一次。
我想得到0-999999(即除了最后一个元素之外的所有元素)
我意识到我可以这样做:
sequence.Take(sequence.Count() - 1);
但是这会导致大序列上的两个枚举。
有没有一个 LINQ 结构可以让我这样做:
sequence.TakeAllButTheLastElement();