학습
Java 함수 정의 및 호출
Java 함수 정의 및 호출 — 초급
함수 정의 및 호출
1. 도입 (왜 배워야 하는가)
프로그래밍에서 함수는 특정 작업을 수행하는 코드 블록을 정의하는 매우 중요한 요소입니다. 실무에서는 코드의 재사용성을 높이고, 유지보수를 용이하게 하며, 복잡한 문제를 단순화하는 데 큰 역할을 합니다. 함수가 없다면, 같은 코드가 여러 번 반복되어 작성될 것이고, 이는 코드의 가독성을 떨어뜨리고, 버그가 발생할 확률을 높입니다.
예를 들어, 쇼핑몰 시스템에서 상품 가격을 계산하는 로직이 여러 군데에서 필요하다면, 이를 함수로 정의해두면 같은 로직을 반복해서 작성하지 않아도 됩니다. 반면 함수의 사용법을 모르면, 코드의 중복으로 인해 수정이 힘들어지고, 코드의 품질이 저하될 수 있습니다.
2. 핵심 개념 설명
함수(Function)는 특정 작업을 수행하는 코드 블록으로, 이름과 매개변수를 가질 수 있습니다. 매개변수는 함수에 입력값을 제공하며, 함수는 입력값을 사용해 결과를 반환합니다.
예를 들어, 계산기를 비유로 들어보겠습니다. 계산기에서는 각 수식(덧셈, 뺄셈 등)을 함수로 구현할 수 있습니다. 이때, 사용자가 입력한 숫자를 매개변수로 받아서 연산을 수행하고 결과를 반환하는 방식입니다.
| 용어 | 설명 |
|---|---|
| 함수 (Function) | 특정 작업을 수행하는 코드 블록 |
| 매개변수 (Parameter) | 함수가 입력받는 값 |
| 반환값 (Return Value) | 함수가 결과로 출력하는 값 |
3. 기본 코드 예제
아래는 가장 기본적인 함수 정의 및 호출 방법입니다.
// 두 수의 합을 계산하는 함수 정의
public class Calculator {
// add 함수 정의
public static int add(int a, int b) {
return a + b; // 두 수를 더한 결과 반환
}
public static void main(String[] args) {
// add 함수 호출
int result = add(5, 10); // 매개변수로 5와 10 전달
System.out.println("결과: " + result); // 결과 출력
}
}
실행 결과
결과: 15
코드 한 줄씩 동작 설명
public class Calculator {-Calculator라는 클래스를 정의합니다.public static int add(int a, int b) {-add라는 이름의 함수를 정의하며, 두 개의 정수형 매개변수를 받습니다.return a + b;- 매개변수로 받은 두 수를 더한 결과를 반환합니다.public static void main(String[] args) {- 프로그램의 시작점인main메소드를 정의합니다.int result = add(5, 10);-add함수를 호출하며, 5와 10을 매개변수로 전달하고 결과를result에 저장합니다.System.out.println("결과: " + result);- 결과를 출력합니다.- 함수는 코드의 재사용성과 가독성을 높이는 중요한 요소입니다.
- 매개변수를 통해 함수에 입력값을 전달하고, 반환값으로 결과를 얻습니다.
- 실무에서 자주 사용되는 함수의 예로는 총 가격 계산기나 BMI 계산기가 있습니다.
- 다음 학습 주제로는 함수의 다양한 종류(재귀 함수, 익명 함수 등)나 예외 처리 방법을 추천합니다.
4. 실전 활용 예제
예제 1: 쇼핑몰에서 장바구니에 있는 상품의 총 가격 계산
장바구니에 여러 개의 상품이 있을 때, 각 상품의 가격을 합산하여 총 가격을 계산하는 함수를 정의할 수 있습니다.
public class ShoppingCart {
public static double calculateTotal(double[] prices) {
double total = 0.0;
for (double price : prices) {
total += price; // 각 상품 가격을 더함
}
return total; // 총 가격 반환
}
public static void main(String[] args) {
double[] prices = {29.99, 49.99, 15.49}; // 상품 가격 배열
double totalPrice = calculateTotal(prices); // 총 가격 계산
System.out.println("총 가격: " + totalPrice); // 결과 출력
}
}
실행 결과
총 가격: 95.47
예제 2: 사용자 입력을 기반으로 BMI 계산
체중과 키를 입력받아 BMI를 계산해 반환하는 함수를 구현할 수 있습니다.
public class BMICalculator {
public static double calculateBMI(double weight, double height) {
return weight / (height * height); // BMI 계산
}
public static void main(String[] args) {
double weight = 70.0; // 체중 (kg)
double height = 1.75; // 키 (m)
double bmi = calculateBMI(weight, height); // BMI 계산
System.out.println("BMI: " + bmi); // 결과 출력
}
}
실행 결과
BMI: 22.86
5. 흔한 실수와 주의사항
실수 1: 매개변수를 잘못 전달
잘못된 매개변수의 타입을 전달할 경우 컴파일 에러가 발생합니다.
int result = add("5", "10"); // 잘못된 코드
실수 2: 반환값을 사용하지 않음
중요한 결과를 사용하지 않으면 의미가 없습니다.
add(5, 10); // 반환값을 사용하지 않음