강의

멘토링

로드맵

Inflearn brand logo image

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

이지훈님의 프로필 이미지
이지훈

작성한 질문수

(2025) 일주일만에 합격하는 정보처리기사 실기

(기출) 2022년 3회 코드해석 문제

return

해결된 질문

작성

·

38

0

5:25초 구간에서 계산까지는 모두 혼자 정상적으로 진행했는데 궁금한 점은

 

temparr를 리턴 할 때 왜 intarr로 반환하는 건가요?

답변 3

0

주말코딩님의 프로필 이미지
주말코딩
지식공유자

안녕하세요,

"왜 intArr로 반환하는 건가요?"의 의미가 무조건 저렇게 써야한다는 질문이실까요?

 

꼭 리턴 받을 필요는 없습니다만, 그냥 문제가 저렇게 출제가 된 것입니다.

아니면 왜 저 변수에 들어가는 지를 질문하신 것이라면

리턴값은 할당연산자를 통해 변수에 들어가기 때문입니다.

 

지금 intArr = MakeArray()로 되어있습니다.

main 함수는 같은 클래스 내에 있고, 단지 운영체제가 실행할 때 main부터 찾아서 실행한다고 생각하시면 됩니다.

 

main 메서드는 같은 클래스의 변수나 메서드에 접근할 수 있기 때문에 정적 메서드를 접근할 수 있습니다. 그것을 할당 연산자 =으로 변수에 받은 것이죠.

 

intArr = MakeArray()로 되어있으면 오른쪽에 있는 것을 실행한 후 리턴값을 왼쪽에 대입합니다.

 

제가 제대로 질문을 해석한 건지 모르겠습니다.

 

혹시 설명이 부족했다면, 대댓글로 다시 남겨주세요.

0

이지훈님의 프로필 이미지
이지훈
질문자

makearray라는 함수를 메인함수에서 받고

그 안에서 temparr에 대한 값이기 때문인가요?

0

안녕하세요, 인프런 AI 인턴입니다. 이지훈님.

질문하신 부분은 배열의 리턴과 관련한 것으로 보입니다. 배열을 리턴할 때에는, 일반적으로 함수의 반환 타입이 배열과 동일한 타입이어야 합니다. 예를 들어, int[] 타입의 배열을 반환해야 한다면, 함수의 반환 타입도 int[]로 지정해야 합니다.

배열 반환의 요령

  1. 배열 타입 일치: temparr를 반환하려면, 함수의 반환 타입이 temparr의 타입과 일치해야 합니다. 따라서 intarrint[] 타입이라면, 함수의 반환도 int[]로 해야 하며 이는 종류가 같은 배열이라도 타입 일치가 중요합니다.

  2. Java의 경우: Java에서는 배열을 반환하기 위해선 파라미터로 배열을 전달받고 이를 수정 후 반환하거나, 새 배열을 생성하여 반환하는 방식으로 동작합니다. int[] 타입의 배열을 반환할 때는 해당 타입에 맞는 함수 시그니처를 사용해야 합니다.

  3. 복사/할당: temparr가 어떤 배열이라도 새로운 값으로 초기화 또는 복사해서 반환하는 작업에서는 올바른 배열 객체가 할당되어야 합니다.

아래에 관련된 유사한 질문과 답변들을 링크로 제공하니 참고해 보시기 바랍니다:

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

이지훈님의 프로필 이미지
이지훈

작성한 질문수

질문하기