Menu
Coddy logo textTech

선택적 매개변수

Coddy C# 여정의 기초 섹션에 포함된 레슨 — 69개 중 52번째.

C#에서는 메서드 시그니처에 기본값을 제공하여 메서드에 선택적 매개변수를 정의할 수 있습니다. 이를 통해 해당 매개변수에 대한 인수를 지정하거나 지정하지 않고 메서드를 호출할 수 있습니다. 인수가 제공되지 않으면 기본값이 사용됩니다.

선택적 매개변수를 정의하기 위한 기본 구문은 다음과 같습니다:

access_modifier return_type method_name(parameter_type parameter_name = default_value) {
    // 메서드 본문
}

예를 들어:

public void Greet(string name = "Guest") {
    Console.WriteLine("Hello, " + name + "!");
}

이 예제에서 Greet 메서드는 기본값이 "Guest"인 선택적 매개변수 name을 가집니다. 이 메서드는 두 가지 방식으로 호출할 수 있습니다:

Greet("Alice"); // 출력: Hello, Alice!
Greet(); // 출력: Hello, Guest!

name에 대한 인자를 제공하면 해당 값이 사용됩니다. 인자를 생략하면 기본값인 "Guest"가 사용됩니다.

선택적 매개변수는 메서드 시그니처에서 모든 필수 매개변수 뒤에 위치해야 합니다. 여러 개의 선택적 매개변수를 사용할 수 있지만, 일단 선택적 매개변수를 정의하면 그 뒤에 오는 모든 매개변수도 반드시 선택적이어야 합니다.

challenge icon

챌린지

쉬움

두 개의 매개변수를 받는 DisplayMessage라는 이름의 메서드를 만드세요:

  1. message라는 이름의 필수 문자열 매개변수.
  2. 기본값이 1repeatCount라는 이름의 선택적 정수 매개변수.

이 메서드는 message를 콘솔에 repeatCount번 출력해야 합니다. 메서드를 호출할 때 repeatCount가 제공되지 않으면 기본값인 1로 설정되어야 합니다.

메서드 호출 방식의 예시는 다음과 같습니다:

DisplayMessage("Hello!"); // "Hello!"를 한 번 출력합니다.
DisplayMessage("Coddy", 3); // "Coddy"를 세 번 출력합니다.

치트 시트

C#의 선택적 매개변수(Optional parameters)를 사용하면 메서드 시그니처에 기본값을 정의할 수 있습니다. 메서드를 호출할 때 인수를 제공하지 않으면 기본값이 사용됩니다.

기본 구문:

access_modifier return_type method_name(parameter_type parameter_name = default_value) {
    // 메서드 본문
}

예제:

public void Greet(string name = "Guest") {
    Console.WriteLine("Hello, " + name + "!");
}

// 사용법:
Greet("Alice"); // 출력: Hello, Alice!
Greet(); // 출력: Hello, Guest!

중요 규칙:

  • 선택적 매개변수는 모든 필수 매개변수 뒤에 나타나야 합니다
  • 선택적 매개변수를 하나 정의하면, 그 뒤의 모든 매개변수도 선택적이어야 합니다

직접 해보기

using System;

public class Program {
    // 여기에 DisplayMessage 메서드를 작성하세요
    

    public static void Main(string[] args) {
        DisplayMessage("Hello!");
        DisplayMessage("Coddy", 3);
    }
}
quiz icon실력 점검

이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.

기초의 모든 레슨