더북(TheBook)

메서드 사용하기 실습

문제 1 참조형과 참조형이 아닌 경우의 가장 큰 차이는 메서드 호출에서 찾아볼 수 있습니다. 다음 코드는 기본형 변수 value와 참조형 변수 arraddOne이라는 메서드에 전달합니다. 두 메서드 모두 전달받은 값에 1씩 더해주는데, 메서드를 실행한 후 전달한 값을 출력하면 서로 결과가 다릅니다. 코드를 실행해 참조형과 기본형이 어떻게 다른지 확인해보세요.

package javaStudy;

public class ReferenceTypeExam{
    public static void main(String []args) {
        ReferenceTypeExam exam = new ReferenceTypeExam();
        
        // 기본형 변수 value1을 addOne에 전달합니다.
        int value = 10;
        exam.addOne(value);
        System.out.println("기본형 변수의 값을 다른 메서드에서 변경한 결과: "+value);
        
        // 참조형 변수 arr을 addOne에 전달합니다.
        int []arr = {10};
        exam.addOne(arr);
        System.out.println("참조형 변수의 값을 다른 메서드에서 변경한 결과: "+arr[0]);
    }
    
    
    public void addOne(int value) {
        value++;
    }
    
    public void addOne(int[] arr) {
        for(int i = 0; i<arr.length ; i++) {
            arr[i] ++;
        }
    }
}

 

실행결과

기본형 변수의 값을 다른 메서드에서 변경한 결과: 10
참조형 변수의 값을 다른 메서드에서 변경한 결과: 11
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.