본문 바로가기

프로그래밍/C# LINQ14

C# LINQ - Enumerable.TakeWhile Enumerable.TakeWhile(IEnumerable, Func) 메서드 public static System.Collections.Generic.IEnumerable TakeWhile (this System.Collections.Generic.IEnumerable source, Func predicate); 매개변수 source IEnumerable 요소가 반환되는 시퀀스 predicate Func 각 소스 요소를 조건에 대해 테스트할 함수 반환 IEnumerable 테스트를 통과한 요소들의 시퀀스를 반환한다. 예제 코드 string[] fruits = { "apple", "banana", "mango", "orange", "passionfruit", "grape" }; IEnumerable qu.. 2024. 3. 28.
C# LINQ - Enumerable.Zip() Enumerable.Zip(IEnumerable, IEnumerable, Func) 메서드 public static System.Collections.Generic.IEnumerable Zip (this System.Collections.Generic.IEnumerable first, System.Collections.Generic.IEnumerable second, Func resultSelector); 매개변수 first IEnumerable 병합할 첫 번째 시퀀스 second IEnumerable 병합할 두 번째 시퀀스 resultSelector Func 두 시퀀스의 요소를 병합하는 방법을 지정하는 함수 반환 IEnumerable 두 입력 시퀀스의 병합된 요소가 들어있는 IEnumerable 예제 .. 2024. 3. 5.
C# 표준 질의 연산자(Standard Query Operators) 표준 질의 연산자(Standard Query Operators) Enumerable 클래스는 System.Linq 네임스페이스에 속해 있으며 50개가 넘는 질의 연산자를 포함하는데, 이들을 표준 질의 연산자라고 한다. 이 연산자들은 몇 가지 기능별로 나눠볼 수 있다. Linq는 다양한 형식의 컬렉션에 질의할 수 있는 간편하고 일관된 방법이다. 지연된 실행의 개념을 구현하므로 질의는 생성 시점이 아니라 열거 과정에 실행된다. C# 지연 평가(lazy evaluation)에 대해서 지연 평가란 무엇인가? 컬렉션의 단일 요소가 미리 계산되지 않고 호출되는 시점에서 평가가 이루어지고 실행된다. 아래의 예제 코드를 확인해 보자. 즉시 평가(eager evaluation) 즉시 평가를 사용 jettstream.ti.. 2024. 2. 26.
C# Linq - Enumerable.Take() Enumerable.Take(IEnumerable, Int32) 메서드 public static System.Collections.Generic.IEnumerable Take (this System.Collections.Generic.IEnumerable source, int count); 매개변수 source IEnumerable 요소가 반환되는 시퀀스 count Int32 반환할 요소의 수 반환 IEnumerable 입력 시퀀스의 시작 위치로부터 지정된 수의 요소가 들어있는 IEnumerable 예제 코드 int[] grades = { 59, 82, 70, 56, 92, 98, 85 }; IEnumerable topThreeGrades = grades.OrderByDescending(grade => .. 2024. 2. 26.
C# Linq - Enumerable.Reverse() Enumerable.Reverse(IEnumerable) 메서드 public static System.Collections.Generic.IEnumerable Reverse (this System.Collections.Generic.IEnumerable source); 매개변수 source IEnumerable 변환할 값의 시퀀스 반환 IEnumerable 특정 시퀀스 요소의 순서를 뒤집을때 사용한다. 예제 코드 static void Main(string[] args) { var s = "abcdef"; var revse_s = new string(s.Reverse().ToArray()); Console.WriteLine(revse_s); // fedcba } char[] apple = { 'a', 'p.. 2024. 2. 19.
C# Linq - Enumerable.OfType() Enumerable.OfType(IEnumerable) 메서드 public static System.Collections.Generic.IEnumerable OfType (this System.Collections.IEnumerable source); 형식 매개 변수 TResult 스퀀스의 요소를 필터링할 형식 매개변수 source IEnumerable 요소를 필터링할 IEnumerable 반환 IEnumerable 형식의 입력 시퀀스에서 가져온 요소가 들어있는 IEnumerable IEnumerable 컬렉션에서 원하는 TResult 형식을 선별하고 싶을 때 사용한다. 예제 코드 System.Collections.ArrayList fruits = new System.Collections.ArrayLis.. 2024. 2. 16.