강의로 돌아가기
장혜영

이해가 안돼요

산술연산자 강의에서는 기본형타입이 바뀌는데
int i =3;
int y = i++;
System.out.println(i); //이렇게하면 i의값은 4로 바뀌잖아요
기본형타입은 메소드에 대입하고난 후에 다시 호출하면 값이 바뀌지않고 원래값으로 나오는건가요???
그리고 참조형타입은 메소드에 대입하고나서 바뀌면 계속 바뀐값으로 유지되는건가요???

작성중인 코드―ReferenceTypeExam.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
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] ++;
        }
    }
}
0 개의 답변
답변 쓰기
이 입력폼은 마크다운 문법을 지원합니다. 마크다운 가이드 를 참고하세요.