[C#/LINQ/.NET6] Enumerable 클래스 : Where/All 확장 메소드를 사용해 상대 리스트에 없는 항목 추출하기
C#/Linq 2022. 9. 18. 00:19728x90
반응형
728x170
■ Enumerable 클래스의 Where/All 확장 메소드를 사용해 상대 리스트에 없는 항목을 추출하는 방법을 보여준다.
▶ Person.cs
namespace TestProject
{
/// <summary>
/// 사람
/// </summary>
public class Person
{
//////////////////////////////////////////////////////////////////////////////////////////////////// Property
////////////////////////////////////////////////////////////////////////////////////////// Public
#region ID - ID
/// <summary>
/// ID
/// </summary>
public int ID { get; set; }
#endregion
}
}
▶ Program.cs
namespace TestProject;
/// <summary>
/// 프로그램
/// </summary>
class Program
{
//////////////////////////////////////////////////////////////////////////////////////////////////// Method
////////////////////////////////////////////////////////////////////////////////////////// Static
//////////////////////////////////////////////////////////////////////////////// Private
#region 프로그램 시작하기 - Main()
/// <summary>
/// 프로그램 시작하기
/// </summary>
private static void Main()
{
List<Person> list1 = new List<Person>();
list1.Add(new Person() { ID = 1 });
list1.Add(new Person() { ID = 2 });
list1.Add(new Person() { ID = 3 });
list1.Add(new Person() { ID = 4 });
list1.Add(new Person() { ID = 5 });
List<Person> list2 = new List<Person>();
list2.Add(new Person() { ID = 1 });
list2.Add(new Person() { ID = 2 });
list2.Add(new Person() { ID = 3 });
// 리스트1에는 있지만 리스트2에는 없는 항목을 추출한다.
IEnumerable<Person> personEnumerable = list1.Where(p1 => list2.All(p2 => p2.ID != p1.ID));
foreach(Person person in personEnumerable)
{
Console.WriteLine(person.ID);
}
}
#endregion
}
728x90
반응형
그리드형(광고전용)
'C# > Linq' 카테고리의 다른 글
[C#/LINQ/.NET6] Enumerable 클래스 : SequenceEqual 확장 메소드를 사용해 배열 비교하기 (0) | 2022.10.06 |
---|---|
[C#/LINQ/.NET6] Enumerable 클래스 : Empty<T> 정적 메소드 사용하기 (0) | 2022.10.02 |
[C#/LINQ/.NET6] LINQ 확장 메소드를 사용해 각 그룹에서 첫번째 항목만 출력하기 (0) | 2022.10.01 |
[C#/LINQ/.NET6] LINQ 표준 질의 연산자를 사용해 각 그룹에서 첫번째 항목만 출력하기 (0) | 2022.10.01 |
[C#/LINQ/.NET6] Enumerable 클래스 : Where/Any 확장 메소드를 사용해 상대 리스트에 없는 항목 추출하기 (0) | 2022.09.18 |
[C#/LINQ/.NET6] Expression<T> 클래스 : 속성명 구하기 (기능 개선) (0) | 2022.09.06 |
[C#/LINQ/.NET6] Expression<T> 클래스 : 속성명 구하기 (0) | 2022.09.06 |
[C#/LINQ] Expression 클래스 : 지정 타입으로 변환하기 (0) | 2022.09.02 |
[C#/LINQ/.NET6] Enumerable 클래스 : Select<TSource, TResult> 확장 메소드를 사용해 정수 문자열 리스트에서 정수 리스트 구하기 (0) | 2022.07.27 |
[C#/LINQ/.NET6] Enumerable 클래스 : Select<TSource, TResult> 확장 메소드를 사용해 정수 문자열 리스트에서 정수 리스트 구하기 (0) | 2022.07.27 |
댓글을 달아 주세요