Java에서 메서드(Method)는 코드의 재사용성과 가독성을 높이는 중요한 역할을 합니다. 메서드를 활용할 때 매개변수(Parameters)와 인자(Arguments)를 통해 데이터를 전달할 수 있습니다. 이번 글에서는 메서드 매개변수와 인자의 차이, 여러 매개변수를 사용하는 방법, 그리고 조건문(if...else
)을 포함한 메서드 작성법을 살펴보겠습니다.
1. 메서드 매개변수와 인자란?
메서드 매개변수(Parameters)와 인자는 서로 밀접하게 관련되어 있지만 다른 개념입니다.
- 매개변수(Parameters): 메서드를 정의할 때 데이터 입력을 받기 위해 선언하는 변수입니다.
- 인자(Arguments): 메서드를 호출할 때 매개변수에 전달되는 실제 값입니다.
예제: 매개변수와 인자
public class MethodExample {
// 매개변수 선언
public static void greet(String name) {
System.out.println("안녕하세요, " + name + "님!");
}
public static void main(String[] args) {
// 인자 전달
greet("홍길동");
}
}
출력 결과:
안녕하세요, 홍길동님!
위 코드에서 name
은 매개변수이고, "홍길동"
은 인자입니다.
2. 여러 매개변수를 사용하는 메서드
Java에서는 메서드에 여러 개의 매개변수를 선언할 수 있습니다. 이를 통해 다양한 데이터를 한 번에 처리할 수 있습니다.
예제: 두 수의 합 계산
public class SumExample {
public static int sum(int num1, int num2) {
return num1 + num2;
}
public static void main(String[] args) {
int result = sum(10, 20);
System.out.println("두 수의 합: " + result);
}
}
출력 결과:
두 수의 합: 30
이 메서드는 두 개의 정수를 입력받아 합을 계산한 후 결과를 반환합니다.
3. 다양한 데이터 타입의 매개변수
메서드는 서로 다른 데이터 타입의 매개변수를 받을 수도 있습니다.
예제: 이름과 나이 출력
public class UserInfo {
public static void displayInfo(String name, int age) {
System.out.println("이름: " + name + ", 나이: " + age);
}
public static void main(String[] args) {
displayInfo("김철수", 25);
}
}
출력 결과:
이름: 김철수, 나이: 25
위 메서드는 문자열과 정수형 데이터를 동시에 처리합니다.
4. 조건문을 포함한 메서드
메서드 안에 if...else
조건문을 사용하면 다양한 상황에 따라 다른 동작을 수행할 수 있습니다.
예제: 성적 평가
public class GradeEvaluation {
public static void evaluateGrade(int score) {
if (score >= 90) {
System.out.println("점수: " + score + ", 등급: A");
} else if (score >= 80) {
System.out.println("점수: " + score + ", 등급: B");
} else if (score >= 70) {
System.out.println("점수: " + score + ", 등급: C");
} else {
System.out.println("점수: " + score + ", 등급: F");
}
}
public static void main(String[] args) {
evaluateGrade(85); // 점수에 따라 다른 결과 출력
}
}
출력 결과:
점수: 85, 등급: B
이 메서드는 입력된 점수에 따라 등급을 평가합니다.
5. 메서드 오버로딩과 매개변수
Java에서는 같은 이름의 메서드를 서로 다른 매개변수 목록으로 정의할 수 있습니다. 이를 메서드 오버로딩(Method Overloading)이라고 합니다.
예제: 메서드 오버로딩
public class OverloadingExample {
// 정수형 매개변수
public static void printInfo(int number) {
System.out.println("숫자: " + number);
}
// 문자열 매개변수
public static void printInfo(String text) {
System.out.println("텍스트: " + text);
}
public static void main(String[] args) {
printInfo(100); // 숫자 버전 호출
printInfo("Hello"); // 문자열 버전 호출
}
}
출력 결과:
숫자: 100
텍스트: Hello
오버로딩된 메서드는 매개변수의 타입이나 개수에 따라 적절한 메서드를 호출합니다.
6. 메서드 작성 시 주의사항
- 매개변수와 인자의 타입 일치: 메서드를 호출할 때 매개변수와 인자의 데이터 타입이 일치해야 합니다.
- 반환값 처리: 반환값이 있는 메서드는
return
문을 사용해 결과를 반환해야 하며, 호출한 곳에서 이를 처리해야 합니다. - 가독성: 메서드 이름과 매개변수 이름을 명확하게 지정하여 가독성을 높이세요.
결론
Java에서 메서드 매개변수와 인자는 데이터를 효율적으로 전달하고 다양한 기능을 구현하는 데 중요한 역할을 합니다. 여러 매개변수를 사용하는 방법, 조건문을 포함한 메서드 작성, 메서드 오버로딩 등을 활용하면 더욱 강력하고 유연한 코드를 작성할 수 있습니다. 이번 글에서 소개한 예제를 바탕으로 다양한 메서드를 작성해 보세요!
댓글 쓰기