인프런 커뮤니티 질문&답변

ku8335님의 프로필 이미지
ku8335

작성한 질문수

나도코딩의 자바 기본편 - 풀코스 (20시간)

void 의 사용법

해결된 질문

작성

·

260

0

F39E00FB-C80D-4464-AB60-70642448F34E.pngvoid 를 어떨 때 쓰는 건지 도무지 이해가 되질 않습니다 ㅠㅠㅠ

반환하는 값이라는게 뭘까요?

답변 1

0

나도코딩님의 프로필 이미지
나도코딩
지식공유자

안녕하세요?
메소드는 처음 배우면 누구나 헷갈릴 수 있습니다 😉 걱정하지 마세요. 예를 들어서 설명해볼게요.
우리가 자판기에서 음료를 뽑기 위해 돈을 넣습니다. 만약 1000 원을 넣었는데 음료가 800 원이라면 거스름돈 200 원을 돌려받아야겠지요. 음료를 뽑고 나면 자동으로 동전이 짤그랑 하면서 떨어집니다. 만약 음료가 1000 원이라면 거스름돈이 없겠죠. 그러면 음료를 뽑고 나서 따로 동전이 나오지 않을 것입니다.

메소드라는 것은 어떤 기능을 하는 코드들의 묶음입니다. 이 메소드는 작은 단위로 나누어두면 그 동작이 필요할 때마다 메소드를 호출해서 사용할 수 있습니다. 프로그램에서 어떤 동작을 5번 해야 하는데 5번 모두 일일이 코드로 작성하게 되면 시간도 많이 걸리고 코드 양도 길어질 뿐만 아니라 그 동작들을 일부 수정해야 한다면 5군데 모두 손을 봐야 할 것입니다.

하지만 이 코드들을 하나의 메소드로 만들어두면 동작이 필요할 때마다 그 메소드를 호출하는 것으로 간단히 같은 동작을 수행할 수 있고, 수정이 필요한 경우에도 메소드 한 군데만 손보면 됩니다. 그리고 이 메소드가 마치 자판기처럼 어떤 동작을 하고 나서 거스름돈이 있다고 하면 동전을 반환해줘야 할 것입니다. 거스름돈이 없다면 동전을 반환하지 않을 것이구요. 이게 반환 값 입니다. 메소드를 호출했을 때 그 메소드가 동작하고 난 뒤에 어떤 값을 반환한다면 메소드를 호출한 쪽에서는 그 값을 받아서 사용할 수 있게 됩니다. 메소드가 아무 값을 반환하지 않는다면 메소드를 호출한 쪽에서는 별도의 값을 받지 않고 그냥 다음 문장으로 넘어가게 됩니다.

이때, 반환하는 값이 있다면 반환하는 값의 자료형에 맞게 int, double, String 등으로 메소드 이름 앞에 적어주면 되구요. 반환하는 값이 없는 경우라면 메소드 이름 앞에 void 라고 적어주면 됩니다 😊 도움이 되셨을까요? 여전히 모호하다면 다시 질문 남겨주세요.
감사합니다.

ku8335님의 프로필 이미지
ku8335

작성한 질문수

질문하기