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
반응형
그리드형(광고전용)
'C# > Common' 카테고리의 다른 글
[C#/COMMON/.NET6] IEnumerable<T> 인터페이스 : 열거 가능형에서 중복 항목 제거하기 (0) | 2022.10.13 |
---|---|
[C#/COMMON/.NET6] object 클래스 : GetHashCode/Equals 메소드를 사용해 열거 가능형에서 중복 항목 제거하기 (0) | 2022.10.12 |
[C#/COMMON/.NET6] IEqualityComparer<T> 인터페이스 : 열거 가능형에서 중복 항목 제거하기 (0) | 2022.10.12 |
[C#/COMMON/.NET6] IEnumerable<T> 인터페이스 : 열거 가능형 임의로 섞기 (0) | 2022.10.12 |
[C#/COMMON/.NET6] List<T> 클래스 : 리스트 임의로 섞기 (0) | 2022.10.12 |
[C#/COMMON/.NET6] IList<T> 인터페이스 : 리스트 임의로 섞기 (0) | 2022.10.12 |
[C#/COMMON/.NET6] DataTable 클래스 : ImportRow 메소드를 사용해 DataRow 객체 가져오기 (0) | 2022.10.10 |
[C#/COMMON/.NET6] 가우스 정규 난수기 사용하기 (0) | 2022.10.09 |
[C#/COMMON/.NET6] 가우스 정규 난수기 사용하기 (0) | 2022.10.09 |
[C#/COMMON/.NET6] Normal 클래스 : Sample 메소드를 사용해기 가우스 정규 난수 생성하기 (0) | 2022.10.09 |
댓글을 달아 주세요