Codegym University 과정의 일부로 멘토와 함께하는 강의 스니펫. 전체 과정에 등록하십시오.
"또 왔군, 아미고. 그럼 안녕."
"저를 만나서 그다지 반갑지 않으신 것 같군요, 디에고?"
"나는 당신이 Java의 메소드에 대해 알아야 할 모든 것을 이미 배웠다고 생각한다는 인상을 받았습니다."
"아, 안해요..."
"그렇게 생각하지 않아요! 절반도 모르잖아요."
"물론이지, 난 섭섭하지 않아...
"알았어, 충분한 이야기. 이제 시작할 시간이다. 간단한 것부터 시작하겠다. 예를 들어 Java에는 return 문이 있다는 사실이 있다. 이 문을 사용하면 호출되는 메서드를 즉시 종료할 수 있다. 다음은 문이다.
return;
"간단합니다. 한 단어 return
다음에 세미콜론이 옵니다. 프로그램이 이 명령문을 실행하자마자 현재 메서드가 종료되고 호출 메서드가 계속됩니다.
" 메서드 return
에서 호출되면 메서드가 즉시 종료되고 전체 프로그램이 함께 종료됩니다.main
main
예:
|
이 fill 메서드는 전달된 배열의 일부를 value . 채울 배열 부분은 인덱스 from 및 로 정의됩니다 to . 가 배열 길이 from 보다 작 0 거나 크면 메서드가 즉시 종료됩니다.to |
"위의 프로그램에는 전달 fill
된 배열 value
을 from
.to
"메소드 시작 시 fill
전달된 값이 유효한지 확인합니다. from
0보다 작거나 to
배열 길이보다 크면 메서드가 fill
즉시 종료됩니다( return
문 실행)."
"알았어. 이 문장이 그게 다야?"
"사실 이 return
문장은 당신이 생각하는 것보다 더 유용합니다. Java의 거의 모든 메서드에서 찾을 수 있을 정도로 매우 유용합니다. 이제 이것이 왜 그런지 이해하도록 안내하겠습니다.
결과가 있는 방법,void
"당신은 아마도 진술이 있고 표현이 있다는 것을 기억할 것입니다 . 그것들의 차이점은 무엇입니까?"
"내가 틀리지 않는다면, 표현은 진술과 달리 어딘가에 사용될 수 있는 의미를 가지고 있습니다."
"정답입니다. 그리고 Java에서 메소드는 값 도 가질 수 있습니다. 그리고 이것은 매우 좋은 소식입니다. 메소드는 입력 매개변수를 기반으로 무언가를 수행할 수 있을 뿐만 아니라 예를 들어 무언가를 평가하고 결과를 반환할 수 있습니다. 계산 .
"그런데 이미 다음과 같은 방법을 접했습니다.
|
메서드 abs() 는 double을 반환합니다. |
|
메서드 nextInt() 는int |
|
메서드 toUpperCase() 는String |
|
메서드 copyOf() 는int[] |
"각 메서드는 미리 결정된 유형 중 하나의 값만 반환할 수 있습니다 . 반환 유형은 메서드가 선언될 때 결정됩니다.
public static Type name(parameters)
{
method body
}
여기서 name
는 메서드 이름, parameters
는 메서드 매개변수 목록, 는 type
메서드가 반환하는 결과의 유형입니다.
아무것도 반환하지 않는 메서드의 경우 특별한 자리 표시자 유형이 있습니다: void
.
"즉, 내 메서드를 작성하고 아무 것도 반환하지 않으려면 메서드의 유형을 로 선언합니다 void
. 그게 다인가요?"
"네. 그리고 Java에는 그런 메서드가 상당히 많다고도 말해야겠네요.
결과 반환
"계산/작업 결과를 반환하는 메서드를 선언하는 방법을 알아냈습니다. 메서드 자체에서 결과를 반환하려면 어떻게 해야 하나요?"
"그건 타당한 질문입니다. 이 return
문장은 여기서 다시 한 번 우리를 도와줍니다. 메서드에서 결과를 전달하는 것은 다음과 같습니다.
return value;
" return
문은 메서드를 즉시 종료합니다. 그리고 value
메서드가 종료될 때 호출 메서드로 반환해야 하는 것입니다. 의 유형은 메서드 선언에 지정된 value
것과 일치해야 합니다 Type
. 다음은 학습한 내용을 강화하는 몇 가지 예입니다.
예 1. 메서드는 두 숫자의 최소값을 계산합니다.
|
이 메서드는 두 숫자 중 최소값을 반환합니다. 반환하는 경우 그렇지 않은 경우 반환 a < b a b |
예 2. 메서드는 전달된 문자열을 여러 n
번 복제합니다.
|
이 메서드는 문자열과 문자열이 반복되어야 하는 횟수라는 두 가지 매개 변수를 사용합니다. 향후 결과를 위해 빈 문자열이 생성됩니다. 반복이 있는 루프에서 times 공백과 문자열이 str 문자열에 추가됩니다 result . 메서드의 결과로 문자열이 반환됩니다. result |
예 3: 메서드는 삼항 연산자를 사용하여 두 숫자의 최대값을 계산합니다.
|
이 메서드는 최대 2개의 숫자를 반환합니다. 반환( if a > b , then a , 그렇지 않으면 b ) |
"훌륭합니다. 방법은 저의 새로운 초능력입니다!"
"실제 작업에서 충분히 연습하는 경우에만. 계속해서."
GO TO FULL VERSION