메서드 매개변수
Coddy C# 여정의 기초 섹션에 포함된 레슨 — 69개 중 50번째.
인수(argument)는 메서드를 호출할 때 메서드에 전달하는 값입니다. 매개변수(parameter)는 그 값을 받는 메서드 정의 내의 변수입니다. 매개변수는 메서드 정의의 괄호 () 안에 작성됩니다:
public static return_type method_name(data_type param1, data_type param2, ...) {
// 코드
}return_type은 메서드가 반환할 값의 타입을 지정합니다. 메서드가 값을 반환할 필요가 없을 때(예: 단순히 무언가를 출력할 때)는 반환 타입으로 void를 사용합니다.
지금은 메서드 이름 앞에 항상 public static을 작성하세요. 각 단어의 의미는 나중에 설명하겠습니다.
우리는 매개변수 이름을 원하는 대로 지을 수 있으며, 필요한 만큼 많은 매개변수를 작성할 수 있습니다.
메서드를 호출하고 인수를 전달하려면 다음과 같이 작성합니다:
method_name(value1, value2, value3, ...);더 적은 인수를 기대하는 메서드에 너무 많은 인수를 전달하면 프로그램이 실패하게 됩니다.
사용 예시:
public static void IsEven(int number) {
if (number % 2 == 0) {
Console.WriteLine(number + " is even");
} else {
Console.WriteLine(number + " is odd");
}
}
for (int i = 15; i < 34; i++) {
IsEven(i);
}
for (int i = 153; i < 219; i++) {
IsEven(i);
}여기 IsEven이라는 이름의 메서드가 있습니다. 이 메서드는 number라는 이름의 매개변수 하나를 정의하며 숫자가 짝수인지 홀수인지 출력합니다. 그런 다음 인수를 전달하여 메서드를 두 번 호출합니다. 한 번은 15에서 34 사이의 모든 숫자에 대해, 두 번째는 153에서 219 사이의 모든 숫자에 대해 호출합니다.
챌린지
쉬움두 개의 숫자 입력을 받는 프로그램을 작성하세요. 입력받은 숫자는 메서드의 인수가 됩니다.
두 개의 인수를 받아 그 곱을 계산하고 출력하는 메서드를 만드세요. 메서드 이름은 원하는 대로 지정할 수 있습니다.
입력받은 숫자들을 사용하여 메서드를 호출하세요.
주의! 코드 작성 시, 메서드 호출/실행 문보다 먼저 메서드를 선언하세요.
치트 시트
메서드 매개변수(parameters)는 값을 전달받기 위해 메서드 시그니처에 정의된 변수입니다. 메서드 인수(arguments)는 메서드를 호출할 때 전달되는 실제 값입니다. 괄호 안에 데이터 타입과 함께 매개변수를 정의합니다:
public static return_type method_name(data_type param1, data_type param2, ...) {
// 코드
}return_type은 메서드가 반환할 값의 타입을 지정합니다. 메서드가 값을 반환할 필요가 없을 때(예: 단순히 무언가를 출력할 때)는 반환 타입으로 void를 사용합니다.
인수를 전달하여 메서드를 호출합니다:
method_name(value1, value2, value3, ...);예제:
public static void IsEven(int number) {
if (number % 2 == 0) {
Console.WriteLine(number + " is even");
} else {
Console.WriteLine(number + " is odd");
}
}
IsEven(15); // 인수 15를 사용하여 메서드 호출참고: 메서드에 너무 많은 인수를 전달하면 프로그램이 실패하게 됩니다.
직접 해보기
using System;
public class Program {
// 메서드 선언
public static void Main(string[] args) {
int a = int.Parse(Console.ReadLine());
int b = int.Parse(Console.ReadLine());
// a와 b를 인수로 사용하여 메서드 호출
}
}이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.