개인 공부/하루 공부

4/2) 메소드 - 전달값, 반환값

첼로그 2023. 4. 3. 00:01

전달값

 

    // 전달값이 있는 메소드
    public static void power ( int number ) { // ▽의 power의 값을 저장해줌 (전달 값) // 매개 변수
        int result = number * number;
        System.out.println(number + " 의 ②승은 " + result);
    }


    public static void powerByExp (int number, int exponent) {
        int result = 1;
        for (int i = 0; i < exponent; i++) { // exponent가 클동안 반복문 수행 / ex1) i 가 거짓일때까지 실행됨. 3이면 3번 실행됨(같은값이될때까지)
            result *= number; //  result = result * number; ?? 나만 이해안되나??
                            // ex1) 1 = 1 * 2

            // exponent, number에 전달값 주는거
        }
        System.out.println(number + " 의 " + exponent + " 승은 " +  result );
    }
    // ins 삽입/수정키

    public static void main(String[] args) {
        // 전달 값, Paramerter
        // 2 -> 2 * 2 = 4
        // 3 -> 3 * 3 = 9

        // Argument, 인수

        power(2); // 2 * 2 = 4; / power 메소드 호출 (number)
        power(3); // 3 * 3 =
        power(4); // 4 * 4 =
        power(9); // 9 * 9 =
        
2 의 ②승은 4
3 의 ②승은 9
4 의 ②승은 16
9 의 ②승은 81

        powerByExp(2,3); // 2 * 2 * 2
        powerByExp(3,3); // 3 * 3 * 3
        powerByExp(10,0); // 1
        powerByExp(2,4); // 2 * 2 * 2 * 2
        powerByExp(2,3);  // 2 * 2 * 2
        
2 의 3 승은 8
3 의 3 승은 27
10 의 0 승은 1
2 의 4 승은 16
2 의 3 승은 8

 


반환값 Return

왜해주는거임?

 

   // 호텔 번호

    // public static void (반환값이 없음)
    // 또한, int double 같은것도 사용가능.
    public static String getPhoneNumber() {
//        String phoneNumber = "02-1234-5678";
//        return  phoneNumber;
        return "02-1234-5666";
    }

    // 호텔 주소
    public static String getAddress() {
        return "서울시 어딘가"; // ※ 엥  생략 가능한거였네!! (String getAddress = "서울시" )

    }


    // 호텔 액티비티
    public static String getActivities() {
    return "볼링장, 탁구장, 노래방"; // ※ 엥  생략 가능한거였네!! (String getActivities = "볼링장, 탁구장.." )

    }



    public static void main(String[] args) {
        // 반환값, Return
        String contactNumber = getPhoneNumber();
        // △ getPhone 메소드가 호출되면서, 위 메소드의 역활(phoneNumber)이 contactNumber에 저장됨
        System.out.println("호텔 전화번호 : " + contactNumber);


        String address = getAddress();
        // △ getAddress 메소드가 호출되면서, 위 메소드의 역활("서울시 어딘가")가 address 에 저장됨
        System.out.println("호텔 주소 : " + address);

        // ※ 엥 굳이 대입안해도 되는거였네??
        System.out.println ( "호텔 액티비티 : " + getActivities());

    }
}

호텔 전화번호 : 02-1234-5666
호텔 주소 : 서울시 어딘가
호텔 액티비티 : 볼링장, 탁구장, 노래방

 


전달값과 반환값