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승을 나타낼 수 있다.