ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [Java] 예외일 경우, 반복하여 실행하기
    우아한 테크코스/테크코스 2020. 2. 15. 20:52
    반응형

    예외일 경우, 반복하여 실행하기

     방법은 두 가지가 있음, 1. While을 이용하여 구간 반복, 2. 메서드 재귀 호출

     메서드 재귀 호출이 조금 더 깔끔해 보일 수 있지만, 성능은 While을 이용한 것이 낫기 때문에 While을 이용할 것!

    While의 경우엔, 구간만 반복하게되고, 메서드 재귀 호출의 경우 메서드를 새로 호출하여 해당 부분이 처리가 되면 남은 부분이 처리됨(Stack 형식으로)

    학습 테스트 코드

    public class Jamie {
    
        public static void main(String[] args) {
            int i = -3;
            ExceptionWhile(i);
            System.out.println(">>>>>>>>>>>>>>>>>");
            ExceptionRecursion(i);
        }
    
        private static void ExceptionWhile(int i) {
            System.out.println("While을 이용한 Exception발생시 반복 처리");
            while(true) {
                try {
                    if (i <= 0) {
                        throw new IllegalArgumentException("예외발생 ! !");
                    }
                    return;
                } catch (Exception e) {
                    i++;
                    System.out.println(e.getMessage());
                }
            }
        }
    
        private static void ExceptionRecursion(int i) {
            System.out.println("재귀 호출(메서드)을 이용한 Exception발생시 반복 처리");
            try {
                if (i <= 0) {
                    throw new IllegalArgumentException("예외발생 ! !");
                }
                return;
            } catch (Exception e) {
                System.out.println(e.getMessage());
                ExceptionRecursion(++i);
            }
        }
    }
    

    학습 결과

    While을 이용한 Exception발생시 반복 처리
    예외발생 ! !
    예외발생 ! !
    예외발생 ! !
    예외발생 ! !
    >>>>>>>>>>>>>>>>>
    재귀 호출(메서드)을 이용한 Exception발생시 반복 처리
    예외발생 ! !
    재귀 호출(메서드)을 이용한 Exception발생시 반복 처리
    예외발생 ! !
    재귀 호출(메서드)을 이용한 Exception발생시 반복 처리
    예외발생 ! !
    재귀 호출(메서드)을 이용한 Exception발생시 반복 처리
    예외발생 ! !
    재귀 호출(메서드)을 이용한 Exception발생시 반복 처리
    
    Process finished with exit code 0
    

     

    반응형

    댓글

Designed by Tistory.