Search

Chapter 4. 조건문과 반복문

Created
2021/04/07 16:58
Tags

코드 실행 흐름 제어

자바 프로그램 실행시 main() 메소드의 위에서 아래로 실행
흐름 제어문 : 실행 흐름을 원하는 대로 제어
조건식 + 중괄호 블럭
조건식의 연산 결과에 따라 블럭의 실행 여부 결정
조건문 & 반복문
조건문 : 블럭 실행이 완료되면 정상 흐름으로 이어감
반복문 : 블럭 실행이 완료되면 처음으로 복귀 ( Looping )
제어문 내부에 다른 제어문 작성 가능 → 복잡한 흐름 제어

조건문

if

if ( 조건식 ) { ... }
Java
복사
조건식의 결과에 따라 블록의 실행 여부 결정
조건식이 True if{...} 블록
조건식이 False if{...} 블록

if-else

if ( 조건식 ) { ... } else { ... }
Java
복사
if문 조건식의 결과에 따라 블록의 실행 여부 결정
if문의 조건식이 True if{...} 블록 else{...} 블록
if문의 조건식이 False if{...} 블록 else{...} 블록

if-else if-else

if ( 조건식 ) { ... } else if ( 조건식 ) { ... } else { ... }
Java
복사
if문과 else if문의 조건식의 결과에 따라 블록의 실행 여부 결정
if문 조건식 True if{...} 블록 else if{...} 블록 else{...} 블록
if문 조건식 False, else if문 조건식 True if{...} 블록 else if{...} 블록 else{...} 블록
if, else if문 조건식 False if{...} 블록 else if{...} 블록 else{...} 블록
else if 문은 여러개 작성 가능

중첩 if

if문의 내부에 새로운 if문을 작성
다른 제어문 내부에도 if문을 작성할 수 있다.
if ( 조건식 ) { ... } else if ( 조건식 ) { ... if ( 조건식 ) { ... } ... } else { ... }
Java
복사

switch

switch ( 변수 ) { case1 : ... break; case2 : ... break; ... default : }
Java
복사
변수
정수 타입 : byte, char, short, int, long
정수값 산출 연산
String 타입
변수의 값에 따라 실행문을 선택
변수에 해당하는 case가 없는 경우 default 실행

반복문

블록을 반복하는 작업에 사용
코드의 라인 수 대폭 감소

for

for ( 초기화; 조건식; 증감식 ) { ... }
Java
복사
반복 횟수를 사전에 결정
실행 순서
1.
초기화
2.
*조건식 연산
2-1. True : 블록 실행
2-1-1. 증감식 수행
2-1-2. *조건식 연산 이하 반복
2-2. False : 블록 탈출
초기화 생략
for(; 조건식; 증감식) { ... }
Java
복사
초기화 다수
for(초기화1, 초기화2; 조건식, 증감식1, 증감식2) { ... }
Java
복사
초기화에서 사용한 변수는 for문 블록 내부에서만 사용 ⇒ for문 블록 탈출 시 메모리에서 해제
초기화 변수로 실수 타입은 사용하지 않는다 ⇒ 근사치로 표현하여 조건식 부정확

while

while ( 조건식 ) { ... }
Java
복사
조건식의 연산 결과에 따라 반복 실행 결정
조건식 True : 블록 반복 실행
조건식 False : 블록 탈출

do-while

do { ... }while ( 조건식 );
Java
복사
조건식을 판단하기 전 do{...} 블록을 먼저 실행

break

while (조건식) { ... if(조건식) { break; } }
Java
복사
break를 만나면 블록을 탈출한다.
while(조건식){ for(;;){ break; } }
Java
복사
반복문이 중첩되어 있는 경우 가장 가까운 반복문에서 탈출한다.
Out:while(조건식){ ... if(조건식){ break Out; } ... }
Java
복사
만약 특정 반복문을 탈출하고 싶으면 ' 라벨 : 반복문 ' 형식으로 작성
break 라벨;

continue

while(조건식){ ... if(조건식){ continue; } ... }
Java
복사
continue를 만나면 반복문의 처음으로 돌아간다.
for : 증감식부터 시작
while, do-while : 조건식부터 시작