Img profile default
조양
  • 2016.4.16 23:09
  • 조회수 440
  • 답변수 1
Img profile default
조양
  • 2016.4.16 23:09
  • 조회수 440
  • 답변수 1

참조형 변수는 왜 다르게 출력이 되죠?

참조형 변수로 선언된 arr이

호출한 함수도 void 이니 리턴값이 없는데
왜 결과를 출력하면 11이 나오죠?

  • #자바 입문
  • #메소드 사용해보기 - 실습

1 답변

  • Gscxhpxkg5i74t30rimh
    정두식
    • 2016.4.17 05:58

    main메소드 입장에서 생각하면요. add에 매개변수로 전달하는 숫자가 10이라고 했을때,

    • int value로 전달할때는 그냥 10이라고 새로운 종이에 적어서 전달하는겁니다. 그 종이를 돌려주지 않으면 가져간 다음에 뭘하건 나랑은 상관이 없습니다.
    • int[]arr로 전달할때는 "저기 1958번 강의실에 화이트보드에 값을 써 놨어"라고 값이 적힌 주소를 전달합니다. 거기에 가 보면 10이라는 값이 써져 있는거져. add메소드는 값을 변경할때 그 강의실에 가서 그걸 지우고 다시 11을 적어버립니다. 나중에 main이 그 값을 사용할때도 강의실에 가서 값을 보고 확인해야 사용합니다. 그러면 11이 적혀 있겠져.

    • 아~ 네 감사합니다!! 이해가 되었습니다!! :)-조양
      2016.4.18 00:42
    • 설명을 한방에 이해되게 설명해주시네요~!-Lee Yeong
      2016.4.27 14:50
    • 와 예시 장난아니게 좋네요 굿 :)-Nicholas Won
      2016.5.19 15:43

답변 쓰기

이 입력폼은 마크다운 문법을 지원합니다. 마크다운 가이드 를 참고하세요.