쿼리 구문을 사용하여 컬렉션 정렬하기

    메서드 구문과 쿼리 구문을 사용하여 컬렉션에서 홀수만 가져온 후 내림차순으로 정렬해서 출력하는 예제를 만들어 보겠습니다. 다음 내용을 입력한 후 실행해 보세요.

    메서드 구문과 쿼리 구문 비교: LinqQuerySyntax.cs

    using System;
    using System.Collections.Generic;
    using System.Linq;
    
    class LinqQuerySyntax
    {
        static void Main()
        {
            int[] numbers = { 3, 2, 1, 4, 5 };
    
            //① 메서드 구문
            IEnumerable<int> methodSyntax =
                numbers.Where(n => n % 2 == 1).OrderBy(n => n);
    
            foreach (var n in methodSyntax)
            {
                Console.WriteLine(n);
            }
    
            //② 쿼리 구문
            IEnumerable<int> querySyntax =
                from num in numbers
                where num % 2 == 1
                orderby num
                select num;
    
            foreach (var n in querySyntax)
            {
                Console.WriteLine(n);
            }
        }
    }

    실행 결과

    1
    3
    5
    1
    3
    5

    의 메서드 구문을 사용하는 코드와 의 쿼리 구문을 사용하는 코드는 형태만 다를 뿐 실행 결과는 동일합니다. 쿼리 구문은 한 줄에 모두 작성해도 되고, 앞 예제처럼 키워드별로 줄 단위로 작성하여 가독성을 높일 수도 있습니다.

    신간 소식 구독하기
    뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.