Java_기초
Java_기초_WhenToUse
위한신
2024. 4. 29. 18:13
메소드를 언제 사용해야하는가?
public class _04_ParameterAndReturn {
public static int getPower(int number) {
int result = number * number;
return result;
// return number * number 로 생략 가능
}
// public static void powerByExp(int number, int exponent) {
// int result = 1;
// for (int i = 0; i < exponent; i++) {
// result *= number;
// }
// System.out.println(number + " 의" + exponent + " 승은 " + result);
// }
public static int getPowerByExp(int number, int exponent) {
int result = 1;
for (int i = 0; i < exponent; i++) {
result *= number;
}
return result;
}
public static void main (String[]args){
// 전달값과 반환값이 있는 메소드
int retVal = getPower(2);
System.out.println(retVal); // 2 * 2 = 4;
retVal = getPower(3);
System.out.println(retVal); // 3 * 3 = 9
retVal = getPowerByExp(3, 3); // 3의 3승
System.out.println(retVal);
System.out.println(getPowerByExp(2, 4));
System.out.println(getPowerByExp(4,5));
}
}
전 장인 parameter And Return의 코드들을 보자, 코드가 길어지고, 다른 방식의 연산을 하기 위해서 또 다른 메소드를 적었다. 메소드는 코드를 간결하게 표현하고 수정하기 쉽게 만들기 위해서 사용한다. 그래서 이번에는 하나의 메소드 값으로 여러 정수 연산을 표현해보자.
package chap_06;
public class _06_WhenToUse {
//메소드가 필요한 이유
//여러번 반복되는 코드를 줄일 수 있다.
public static int getPower(int number, int exponent) {
int result = 1;
for (int i = 0; i < exponent; i++) {
result *= number;
}
return result;
}
public static void main(String[] args) {
//2의 2승 구하기
System.out.println(getPower(2,2));
// 3의 3승
System.out.println(getPower(3,3));
// 4의 2승 구하기
System.out.println(getPower(4,2));
}
}
메소드를 통해서 코드의 줄을 줄이는 것이 메소드의 목적이다.
이는 앞선 n의 2승을 구하는 변수 하나로 구성된 메소드를 여기 안에도 넣을 수 있다는 뜻으로도 해석 가능하다.
public static int getPower(int number) {// "4"
return getPower(number, 2);
이를 통해 하나의 변수만 getpower 안에 넣는다면, 그 정수의 2승을 나타낼 수 있다.