반환 타입

민범·2023년 12월 25일

Java -기본-

목록 보기
15/18

반환 타입이 있으면 반드시 값을 반환해야 한다.

  • 반환 타입이 있는 메서드는 반드시 return을 사용해서 값을 반환해야 한다. 이 부분은 특히 조건문과 함께 사용할 때 주의해야 한다.
public static void main(String[] args) {
	boolean result = odd(2);
    System.out.println(result);
    }
public static boolean odd(int i) {
	if (i % 2 == 1) {
    	return true;
     }
  }
  • 이 코드에서 if조건이 만족할 때는 true가 반환되지만, 조건을 만족하지 않으면 어떻게 될까? 조건을 만족하지 않는 경우는 return문이 실행되지 않는다.
//수정 코드
public static void main(String[] args) {
	boolean result = odd(2);
    System.out.println(result);
    }
public static boolean odd(int i) {
	if (i % 2 == 1) {
    	return true;
     } else {
     	return true;
        }
  }
  • 이렇게 수정하면 if조건을 만족하지 않아도 else을 통해 return문이 실행된다.

return 문을 만나면 그 즉시 메서드를 빠져 나간다.

  • return문을 만날 시 그 즉시 해당 메서드를 빠져 나간다.
  • 다음 로직을 수행하는 메서드를 만들어보자
    ▶️ 18살 미만의 경우: 미성년자는 출입이 불가합니다.
    ▶️ 18살 이상의 경우: 입장하세요
public static void main(String[] args) {
	checkAge(10);
    checkAge(20);
  }
public static void checkAge(int age) {
	if(age < 18) {
    	System.out.println(age + "살, 미성년자는 출입이 불가능합니다.");
        return;
      }
     System.out.println(age + "살, 입장하세요");
     }
   }
  • 18세 미만의 경우 "미성년자는 출입이 불가능합니다"를 출력하고 바로 return문이 수행된다. 따라서 다음 로직을 수행하지 않고, 바로 빠져나온다.
  • 18세 이상의 경우 "입장하세요"를 출력하고, 메서드가 종료된다. 참고로 반환 타입이 없는 void형이기 때문에 마지막 줄의 return은 생략 가능하다.

반환 값 무시

  • 반환 타입이 있는 메서드를 호출시 만약 반환 값이 필요없다면 사용하지 않아도 된다.
    ▶️ 예시1: int sum = add(1,2) //반환된 값을 받아서 sum에 저장한다.
    ▶️ 예시2: add(1,2)//반환된 값을 사용하지 않고 버린다. 단순히 메서드만 호출한다.
profile
웹 백엔드 개발자를 지향하고 있습니다.

0개의 댓글