✔ if 그리고 else
if문
- true일 경우 if절의 중괄호 내부가 실행되는 구조
- 속한 문장이 하나인 경우에는 중괄호의 생략이 가능
if(true or false) {
조건 true시 실행되는 영역
}
if ~ else문
- true일 경우 if절의 중괄호 내부가 실행, false일 경우 else절의 중괄호 내부가 실행되는 구조
- 속한 문장이 하나인 경우에는 중괄호의 생략이 가능
if(true or false) {
조건 true시 실행되는 영역
} else {
조건 false시 실행되는 영역
}
if ~ else if ~ else문
- 여러 문장 중에서 조건에 따라 하나의 문장만 실행하는 구조
- if ~ else if ~ else문은
- 맨 위의 if문에서부터 조건을 검사하며 내려오다가 조건이 true인 부분을 만나면 해당 부분만 실행하고 나머지는 건너 뜀
- 마지막까지 조건이 true인 부분을 만나지 못하면 마지막에 위치한 else에 속한 문장을 실행
- 속한 문장이 하나인 경우에는 중괄호의 생략이 가능
if(조건) {
조건 true시 실행되는 영역
}
else if(조건) {
조건 true시 실행되는 영역
}
else if(조건) {
조건 true시 실행되는 영역
}
...
else {
조건 true를 마지막까지 만나지 못하면 실행되는 영역
}
if ~ else문과 유사한 성격의 조건 연산자
- 피연산자가 세 개인 연산자
- if ~ else문을 대체하는 용도로 주로 사용
조건 ? true시 반환 : false시 반환
✔ switch와 break
switch문
- 레이블인 case와 default
- 레이블에 따라 실행되는 구조
- 레이블을 찾아 실행할 위치가 결정되면 레이블은 의미가 없어지고 그 레이블부터 계속해서 실행을 이어나가게 됨
switch(n) {
case 1:
n이 1이면 여기부터 실행
case 2:
n이 2이면 여기부터 실행
case 3:
n이 3이면 여기부터 실행
default:
해당하는 case가 없다면 여기부터 실행
}
switch문 + break문
- break문을 통해 switch문 밖으로 빠져나갈 수 있음
- break문을 만나면 switch문을 벗어나게 되므로 하나의 레이블에 해당하는 영역만 실행 가능
- if ~ else if ~ else문을 일부 대체할 수 있는 형태
switch(n) {
case 1:
n이 1이면 여기부터 실행
break;
case 2:
n이 2이면 여기부터 실행
break;
case 3:
n이 3이면 여기부터 실행
break;
default:
해당하는 case가 없다면 여기부터 실행
}
✔ for, while, 그리고 do~while
while문
- 반복의 조건에 따라 반복적 실행을 하는 구조
- 먼저 조건을 검사한 다음, 결과가 true이면 중괄호 영역을 실행 (선 검사 방식)
- 중괄호가 한 번도 실행되지 않을 수 있음
while(반복 조건) {
반복 영역
}
do ~ while문
- 반복의 조건에 따라 반복적 실행을 하는 구조
- 먼저 중괄호 영역을 실행한 다음, 조건 검사 후 true이면 반복 결정 (후 검사 방식)
- 중괄호가 반드시 한 번은 실행되게 됨
do {
반복 영역
} while(반복 조건);
for문
- 정해진 횟수에 따라 반복적 실행을 하는 구조
- 반복에 필요한 모든 것을 한 줄에 나열할 수 있음
for(반복의 횟수를 세기 위한 변수; 반복의 조건; 반복의 조건을 무너뜨리기 위한 연산;) {
반복 영역
}
✔ break & continue
break문
- 실행 흐름의 조절을 목적으로 switch문, 반복문을 빠져나가는 용도로 사용되는 키워드
continue문
- 실행하던 반복문의 나머지 부분을 생략하고 프로그램의 흐름을 조건 검사 부분으로 이동시키는 키워드
무한 루프와 break
- 반복의 조건이 true로 명시되어서 해당 반복문을 빠져나가지 못하도록 구성된 반복문
- while, do ~ while, for문을 이용해서 무한 루프를 구성할 수 있음
- 이 때 break를 이용하면 특정 조건이 될 때까지 반복할 수 있음
while(true) {
반복 영역
}
do {
반복 영역
} while(true)
for( ; ; ) {
반복 영역
}
✔ 반복문의 중첩
반복문의 중첩?
- 하나의 반복문 안에 다른 반복문이 삽입될 수 있음
- 생각해 볼 수 있는 중첩의 종류는?
- for문 + for문
- while문 + for문
- do while문 + for문
- for문 + while문
- while문 + while문
- do while문 + while문
- for문 + do while문
- while문 + do while문
- do while문 + do while문
중첩된 반복문을 어떻게 한 번에 빠져나올까?
- break문이 실행되면 자신을 감싸고 있는 하나의 반복문만 빠져나갈 수 있음
- 그러므로 레이블을 이용해서 빠져나갈 위치를 명시해주면 명시된 반복문까지 빠져나갈 수 있음
outer: for(조건) {
for(조건) {
if(조건) {
break outer;
}
}
}
'Java-Spring > 열혈 Java 프로그래밍' 카테고리의 다른 글
[Java] 클래스와 인스턴스 (0) | 2023.08.01 |
---|---|
[Java] 메소드와 변수의 스코프 (0) | 2023.06.28 |
[Java] 연산자 (0) | 2023.06.27 |
[Java] 상수와 형 변환 (0) | 2023.06.26 |
[Java] 변수와 자료형 (0) | 2023.06.26 |