첨부 실행 코드는 나눔고딕코딩 폰트를 사용합니다.
728x90
반응형
728x170

■ IEnumerable<T> 인터페이스를 사용해 열거 가능형을 임의로 섞는 방법을 보여준다.

 

▶ IEnumerable 인터페이스 : 열거 가능형 임의로 섞기 예제 (C#)

using System;
using System.Collections.Generic;

List<Student> sourceList = new List<Student>();

sourceList.Add(new Student { ID = "ID1", Name = "홍길동" });
sourceList.Add(new Student { ID = "ID2", Name = "김철수" });
sourceList.Add(new Student { ID = "ID3", Name = "최민우" });

IEnumerable<Student> resultEnumerable = Shuffle(sourceList);

foreach(Student student in resultEnumerable)
{
    Console.WriteLine(student.ID);
}

 

▶ IEnumerable 인터페이스 : 열거 가능형 임의로 섞기 (C#)

using System;
using System.Collections.Generic;
using System.Linq;

#region 섞기 - Shuffle<TItem>(sourceEnumerable)

/// <summary>
/// 섞기
/// </summary>
/// <typeparam name="TItem">항목 타입</typeparam>
/// <param name="sourceEnumerable">소스 열거 가능형</param>
/// <returns>섞은 후 열거 가능형</returns>
public IEnumerable<TItem> Shuffle<TItem>(IEnumerable<TItem> sourceEnumerable)
{
    Random random = new Random(DateTime.Now.Millisecond);

    return sourceEnumerable.OrderBy<TItem, int>((item) => random.Next());
}

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

댓글을 달아 주세요