본문 바로가기

Java

Java return문, 반환값

return문

1) 현재 실행중인 메서드를 종료하고 호출한 메서드로 돌아가는 것

2) return문은 반환값 유무에 관계없이 필수적으로 필요함

( 단, 반환타입이 void인 경우 return문이 없어도 컴파일러가 메서드의 마지막에 retrun;을 자동으로 추가해줌)

// 리턴문이 없어서 에러가 발생하는 예
int max(int a int b) {
	if(a > b)
    	return a; // ERROR, 조건식이 참일때만 실행됨 거짓인 경우에 return이 없음
}


// 위 코드르 아래와 같이 작성해야 에러가 발생하지 않음
int max(int a int b) {
	if(a > b)
    	return a; // 조건식이 참일 때 a를 반환
    else
    	return b; // 조건식이 거짓일 때 b를 반환
}

반환값

1) 반환타입이 void가 아닐 때 , 반환 타입을 일치시키거나 자동형변환이 가능한 타입이어야함

(ex. char, byte, short형은 int형으로 자동형변환 가능)

int add(int x, int y) {
	int result = x + y;
    return result; // 리턴문의 반환값은 주로 변수임
}

int add(int x, int y) {
    return  x + y; // 리턴문의 반환값은 주로 변수이지만, 수식이 올 수도 있음 
}