1. return
진술
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의 거의 모든 메서드에는 하나가 있으며 그 이유는 다음과 같습니다.
2. 결과가 있는 방법,void
문장이 있고 표현이 있다는 것을 알아낸 적이 있음을 기억하십시오 . 표현식은 문장과 달리 어디선가 사용할 수 있는 값을 가지고 있습니다.
그리고 Java에서 메소드는 값을 가질 수 있습니다 . 그리고 이것은 매우 좋은 소식입니다. 메소드는 입력 매개변수를 기반으로 무언가를 할 수 있을 뿐만 아니라 예를 들어 무언가를 평가하고 계산 결과를 반환할 수 있습니다 .
그건 그렇고, 당신은 이미 다음과 같은 방법을 접했습니다.
|
메서드 abs() 는 double을 반환합니다. |
|
메서드 nextInt() 는int |
|
메서드 toUpperCase() 는String |
|
메서드 copyOf() 는int[] |
각 메소드는 하나의 미리 결정된 유형의 하나의 값만 반환할 수 있습니다. 반환 유형은 메서드가 선언될 때 결정됩니다.
public static Type name(parameters)
{
method body
}
여기서 name
는 메서드 이름, parameters
는 메서드 매개변수 목록, 는 type
메서드가 반환하는 결과의 유형입니다.
아무것도 반환하지 않는 메서드의 경우 특별한 자리 표시자 유형이 있습니다: void
.
자신만의 메서드를 작성 중이고 호출 메서드에 아무 것도 반환하고 싶지 않습니까? 메소드의 유형을 로 선언하면 void
문제가 해결됩니다. Java에도 이와 같은 메서드가 많이 있습니다.
3. 결과 반환
방금 계산 결과를 반환하는 메서드를 선언하는 방법을 알아냈지만 이 결과가 메서드 자체에 어떻게 발생합니까?
이 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