제어문
- 정의 : 프로그램의 흐름(실행 순서)를 바꾸어 주는 문장들
- 종류
- 조건문 : if 문
- 분기문 : switch 문
- 반복문 : for 문, for each 문
- 조건 반복문 : while 문 do~while 문
조건문 – if 문
- 코드
1) if (조건식) { 조건식이 참일 때 수행될 코드 } 2) if (조건식) { 조건식이 참일 때 수행될 코드 } else { 조건식이 거짓일 때 수행될 코드 } -> 생략가능 3) if (조건식1) { 조건식1이 참일 때 수행될 코드 } else if (조건식2) { 조건식1은 거짓이고 2가 참일 때 수행될 코드 } else { 조건식1, 2 모두 거짓일 때 수행될 코드 } -> 생략가능 4) if (조건식1) { if (조건식2) { 조건식1이 참이고 조건시2가 참일 때 수행될 코드 } else { 조건식1이 참이고 조건식2가 거짓일 때 수행될 코드 } } else { 조건식1이 거짓일 때 수행될 코드 } -> if (조건식1 && 조건식2) { 조건식1,2 모두 참일 때 수행될 코드 } else if (조건식1) { 조건식1만 참일 때 수행될 코드 } else { 모두 거짓일 때 수행될 코드 }
- 조건식(condition) : 참/거짓으로 판단할 수 있는 수식, Boolean자료형을 가진 변수
- 동작 순서 : 조건식이 참이면 { } 안에 있는 코드를 실행
분기문 - switch 문
- 코드
switch (key) { case value: break; default: break; }
- key : 변수, 수식, 정수, 문자열 사용 가능
- value : 값, 정수 리터럴, 문자 리터럴, 문자열 사용 가능 / 중복, 변수 사용 불가
- default : 생략 가능
- break : 생략 가능하지만 없으면 break 문 있는 case에 있는 코드 다 실행됨
- 동작 순서
- key값 계산
- key값과 value값이 일치하는 case문으로 이동
- 이후 문장들을 수행
- break문이나 switch문의 끝을 만나면 switch문 전체를 빠져나감
반복문 – for 문
- 코드
1) for (초기화; 조건식; 증감식) { 반복 명령 코드 } 2) for (초기화; 조건식; 증감식) { for (초기화; 조건식; 증감식) { 반복 명령 코드 } 반복 명령 코드 }
- 동작 순서 : 조건식이 참이면 계속 실행
- 초기화 실행
- 조건식 확인하여 참인 경우 거짓인 경우
- 명령 코드 실행 for 문 종료
- 증감식 실행
- Ⅱ) ~ Ⅳ) 반복
반복문 – for each 문
- 코드
for (타입 변수명 : 배열 or 컬렉션) { 반복 명령 코드 }
- 동작 순서 : 배열 or 컬렉션에 저장된 값이 매 반복마다 하나씩 순서대로 읽혀서 변수에 저장된다.
조건 반복문 – while 문
- 코드
while(조건식){ 반복할 코드 }
- 조건식 : 생략 불가
- 동작 순서 : 먼저 조건문을 확인하여 참인 동안 계속 반복
- 조건 확인 참인 경우 거짓인 경우
- 명령 코드 실행 while 문 종료
- Ⅰ) ~ Ⅱ) 반복
조건 반복문 – do ~ while 문
- 코드
do { 반복할 코드 } while( 조건식 );
- 동작 순서 : 먼저 반복할 코드를 실행시키고 조건을 확인 후 실행할지 말지 결정
- 반복할 코드 실행
- 조건 확인 참인 경우 거짓인 경우
- 명령 코드 실행 while 문 종료
- Ⅱ) ~ Ⅲ) 반복
항상 참인 명령문
while( true ) {
반복할 코드
}
for( ; ; ) {
반복할 코드
}
break & continue
- break 문 : 자신이 포함된 가장 가까운 반복문을 탈출함
- continue 문 : 반복문 내에서만 사용될 수 있으며, 반복이 진행되는 도중 continue문을 만나면 반복문의 끝으로 이동하여 다음 반복문으로 넘어간다.
이름 붙은 반복문
- 정의 : break문은 근접한 단 하나의 반복문만 벗어날 수 있으므로, 여러 개의 반복문이 중첩된 경우에는 break 문으로 중첩 반복문을 완전히 벗어날 수 없다. 이때는 중첩 반복문 앞에 이름은 붙이고 break 문과 continue 문에 이름을 지정해 줌으로써 하나 이상의 반복문을 벗어나거나 건너뛸 수 있다.
코드
loop1 : for (초기화; 조건식; 증감식){
loop2 : for(초기화; 조건식; 증감식){
break loop1; -> loop1이름을 가진 가장 밖에 있는 for문을 끝낸다.
break; -> 가장 가까운 for문인 loop2를 끝낸다.
continue loop1; -> loop1 for문의 맨끝으로 보낸다.
continue; -> 가장 가까운 for문인 loop2의 맨 끝으로 보낸다.
}
}
'프로그래밍 > 자바공부 - Chapter별' 카테고리의 다른 글
Chapter03 (0) | 2021.09.06 |
---|---|
Chapter02 (0) | 2021.09.06 |
Chapter01 (0) | 2021.08.24 |