[C# 문법] C# LINQ Range 메서드 - 연속된 값 설정하기

소개

  • 오늘은 C# 문법에서 LINQ 구문중 Range 메서드에 대해서 알려 드리려로 합니다.
  • Range 메서드는 리스트나 배열을 연속적인 값으로 채울 수 있게 도와주는 메서드 입니다.
  • 이해하기 쉽게 예제코드를 통해서 보여드리도록 하겠습니다.

Repeat 메서드 예제코드

  • Enumerable.Range 메서드를 사용하면 연속된 숫자값을 생성할 수 있습니다.
  • 생성한 숫자값을 ToArray, ToList 메서드로 배열 했습니다.
  • 또한, LINQ를 사용하지 않고 반목문으로 연속된 숫자값을 생성하는 로직을 작성하여 LINQ와의 코드량의 차이점도 확인해 보도록 하겠습니다.
using System;
using System.Collections.Generic;
using System.Linq;

namespace ConsoleApp7
{
    static class Program
    {
        static void Main(string[] args)
        {
            // LINQ를 사용한 Range 구문
            var numberArray = Enumerable.Range(1, 20)
                                   .ToArray();

            foreach (var item in numberArray)
            {
                Console.WriteLine($"numberArray value : {item}");
            }

            var numberList = Enumerable.Range(1, 10)
                                       .ToList();

            foreach (var item in numberList)
            {
                Console.WriteLine($"numberList value : {item}");
            }

            // LINQ를 사용하지 않는 Repeat 구문
            int[] numbers = new int[20];
            for(int idx= 0; idx < numbers.Length; idx++)
            {
                numbers[idx] = idx + 1;
            }

            foreach (var item in numbers)
            {
                Console.WriteLine($"number value : {item}");
            }

            List<int> list = new List<int>();
            for(int idx = 0; idx < 10; idx++)
            {
                list.Add(idx + 1);
            }

            foreach (var item in numberList)
            {
                Console.WriteLine($"numberList value : {item}");
            }
        }
    }
}

실행 결과


numberArray value : 1  
numberArray value : 2  
numberArray value : 3  
numberArray value : 4  
numberArray value : 5  
numberArray value : 6  
numberArray value : 7  
numberArray value : 8  
numberArray value : 9  
numberArray value : 10  
numberArray value : 11  
numberArray value : 12  
numberArray value : 13  
numberArray value : 14  
numberArray value : 15  
numberArray value : 16  
numberArray value : 17  
numberArray value : 18  
numberArray value : 19  
numberArray value : 20  
numberList value : 1  
numberList value : 2  
numberList value : 3  
numberList value : 4  
numberList value : 5  
numberList value : 6  
numberList value : 7  
numberList value : 8  
numberList value : 9  
numberList value : 10  
number value : 1  
number value : 2  
number value : 3  
number value : 4  
number value : 5  
number value : 6  
number value : 7  
number value : 8  
number value : 9  
number value : 10  
number value : 11  
number value : 12  
number value : 13  
number value : 14  
number value : 15  
number value : 16  
number value : 17  
number value : 18  
number value : 19  
number value : 20  
numberList value : 1  
numberList value : 2  
numberList value : 3  
numberList value : 4  
numberList value : 5  
numberList value : 6  
numberList value : 7  
numberList value : 8  
numberList value : 9  
numberList value : 10
  • 이처럼 Enumerable.Range LINQ를 쓰고 안쓰고의 코드량의 차이를 확실히 느끼실 수 있습니다.
728x90

이 글을 공유하기

댓글

Designed by JB FACTORY