첨부 소스 코드는 나눔고딕코딩 폰트를 사용합니다.
728x90
반응형
728x170
#region 마지막 값을 제외한 열거 가능형 구하기 - SkipLast<TElement>(sourceEnumerable, lastSkipCount)

/// <summary>
/// 마지막 값을 제외한 열거 가능형 구하기
/// </summary>
/// <typeparam name="TElement">요소 타입</typeparam>
/// <param name="sourceEnumerable">소스 열거 가능형</param>
/// <param name="lastSkipCount">제외 마지막 항목 수</param>
/// <returns>마지막 값을 제외한 열거 가능형</returns>
public IEnumerable<TElement> SkipLast<TElement>(IEnumerable<TElement> sourceEnumerable, int lastSkipCount)
{
    IEnumerator<TElement> enumerator = sourceEnumerable.GetEnumerator();

    Queue<TElement> queue = new Queue<TElement>(lastSkipCount + 1);

    while(true)
    {
        if(!enumerator.MoveNext())
        {
            break;
        }

        queue.Enqueue(enumerator.Current);

        if(queue.Count > lastSkipCount)
        {
            yield return queue.Dequeue();
        }
    }
}

#endregion
728x90
반응형
그리드형(광고전용)
Posted by icodebroker

댓글을 달아 주세요