■ IEnumerable<T> 인터페이스를 사용해 열거 가능형을 임의로 섞는 방법을 보여준다.
▶ IEnumerable
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
인터페이스 : 열거 가능형 임의로 섞기 예제 (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
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
인터페이스 : 열거 가능형 임의로 섞기 (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 |