더북(TheBook)

37.3 가변 길이 매개변수

메서드의 매개변수를 받을 때 배열 형식의 매개변수를 하나 사용하여 가변적으로 하나 이상의 값을 받아 배열에 저장할 수 있는 가변형 매개변수를 제공합니다. 가변형 매개변수는 params 키워드를 사용하여 배열형 매개변수를 선언하면 됩니다. 메서드 오버로드와 달리 하나의 매개변수로 하나 이상의 값을 받을 수 있는 구조입니다. 이러한 가변 길이 매개변수를 다른 말로 나머지 매개변수(rest parameter)라고도 합니다.

 

params 키워드를 사용하여 가변 길이 매개변수를 갖는 메서드 만들기

이번에는 가변형 매개변수를 사용해 보겠습니다. 다음 내용을 입력한 후 실행해 보세요. SumAll() 메서드는 정수 형식의 값을 가변 형식으로 받을 수 있습니다.

가변 길이 매개변수로 하나 이상의 매개변수 받기: ParamsDemo.cs

using System;

class ParamsDemo
{
    static void Main()
    {
        Console.WriteLine(SumAll(3, 5));
        Console.WriteLine(SumAll(3, 5, 7));
        Console.WriteLine(SumAll(3, 5, 7, 9));
    }

    static int SumAll(params int[] numbers) //① params로 매개변수를 여러 개 받기
    {
        int sum = 0;
        foreach (int num in numbers)
        {
            sum += num;
        }
        return sum;
    }
}
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.