System.Random rng = new System.Random(); 

List<int> randomNumList = duplicates.OrderBy(n => rng.Next()).Take(3).ToList(); 

 

랜덤한 순서로 리스트의 항목을 섞은 후 그 중에서 처음 3개의 항목만을 선택하여 새로운 리스트로 만든다.

 

  1. OrderBy(n => rng.Next()):
    • OrderBy는 LINQ (Language Integrated Query)의 메서드 중 하나로, 시퀀스의 요소들을 특정 기준에 따라 정렬
    • n => rng.Next()는 람다 식을 사용하여 정렬 기준을 제공하는데, 여기서 rng는 Random 클래스의 인스턴스를 가리킨다. rng.Next()는 호출될 때마다 0과 Int32.MaxValue 사이의 다른 무작위 정수를 반환한다.
    • OrderBy 함수는 각 항목 n에 대해 다른 랜덤 값이 연결되므로, 전체 리스트가 무작위로 섞인다.
  2. Take(3):
    • Take은 또 다른 LINQ 메서드로, 시퀀스에서 지정된 수의 항목을 처음부터 선택한다.
    • Take(3)는 섞인 리스트에서 처음 3개의 요소만을 추출한다.

 

 

+++

 

List<int> exclusiveItems = card_data_ids.Except(card_info_ids).ToList(); 

 

card_data_ids에서 card_info_ids에 없는 요소들을 선택 및 반환

 

  1. Except 메서드:
    • Except는 LINQ의 메서드로서, 첫 번째 컬렉션(card_data_ids)에서 두 번째 컬렉션(card_info_ids)에 있는 요소를 제외한 모든 요소를 반환한다.
    • card_data_ids에는 존재하지만 card_info_ids에는 존재하지 않는 모든 정수를 찾아낼 때 사용된다.

+ Recent posts