투케이2K

78. (java/자바) 알고리즘 : 재귀호출(recursive call)사용해 실시간 카운트다운(countdown) 및 자동종료 실시 본문

Java

78. (java/자바) 알고리즘 : 재귀호출(recursive call)사용해 실시간 카운트다운(countdown) 및 자동종료 실시

투케이2K 2021. 1. 6. 08:23
반응형

/* =========================== */

[ 개발 환경 설정 ]

개발 툴 : Eclipse

개발 언어 : Java

/* =========================== */

/* =========================== */

[소스 코드]

 

package AI2;

public class MainActivity22 {
	
	//카운트다운을 수행할 변수 선언 실시
	static int count = 1;

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		System.out.println("[재귀호출(recursive call)사용해 실시간 카운트다운(countdown) 및 자동종료 실시]");

		/*[설 명]
		 * 1. 재귀호출(recursive call) 이란? 메소드 내부에서 해당 메소드가 또다시 호출되는 것을 의미합니다
		 * 2. 주요 참고사항 - 재귀 호출은 자기가 자신을 계속해서 호출하므로, 끝없이 반복되므로 재귀 호출을 중단하도록하는
		 *               조건이 반드시 포함되어야 합니다
		 */
		
		getCall(); //재귀 메소드 호출 실시
		
	}//메인 종료
	
	public static void getCall() {		
		try {
			if(count <= 5){ //count값이 5보다 작거나 같을때까지 수행
				System.out.println("[카운트다운 : "+count+"]");
				count++; //실행횟수 증가
				
				Thread.sleep(1000); //1초 단위로 계속해서 재귀호출 실시
				getCall(); //내부에서 다시 호출한다
			}
			else{ //재귀호출을 종료한다			
				System.out.println("[카운트다운 : 종료]");
			}			
		}
		catch(Exception e) {
			e.printStackTrace();
		}
	}

}//클래스 종료

/* =========================== */

[결과 출력]

[재귀호출(recursive call)사용해 실시간 카운트다운(countdown) 및 자동종료 실시]

[카운트다운 : 1]

[카운트다운 : 2]

[카운트다운 : 3]

[카운트다운 : 4]

[카운트다운 : 5]

[카운트다운 : 종료]

/* =========================== */

/* =========================== */

[요약 설명]

* 1. 재귀호출(recursive call) 이란? 메소드 내부에서 해당 메소드가 또다시 호출되는 것을 의미합니다

* 2. 주요 참고사항 - 재귀 호출은 자기가 자신을 계속해서 호출하므로, 끝없이 반복되므로 재귀 호출을 중단하도록하는

                          조건이 반드시 포함되어야 합니다

/* =========================== */

반응형
Comments