| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | ||||||
| 2 | 3 | 4 | 5 | 6 | 7 | 8 |
| 9 | 10 | 11 | 12 | 13 | 14 | 15 |
| 16 | 17 | 18 | 19 | 20 | 21 | 22 |
| 23 | 24 | 25 | 26 | 27 | 28 | 29 |
| 30 |
- vscode
- HTML
- 오라클데이터베이스
- js
- Android
- 삼항연산자
- java
- JavaScript
- 엘리멘트
- 인텔리제이 #intelliJ #JetBrains
- 프론트엔드
- CSS
- 오라클
- 오라클 로그
- Signature
- 스타일테그
- 시스템에러
- 자바스크립트
- 설치
- oracle database
- mpcview
- frontend
- oracle
- Method
- 오라클 데이터베이스
- github
- CentOS
- MalwareZero
- Linux
- https://www.w3schools.com/
- Today
- Total
개발
11. 흐름 제어 반복문 본문

안녕하세요
흐름제어 마지막 반복문을 포스팅 해 보겠습니다.
1. Do~While
do문은 while에 지정된 식이 false가 될 때까지 { }로 묶인 하나의 문 또는 블록을 반복하여 실행합니다.
|
1
2
3
4
5
6
7
8
9
10
11
12
13
|
public class DoWhile {
public static void main(String[] args) {
int i = 10;
do {
System.out.printf("a) i : %d%n", i--);
} while (i > 0);
do {
System.out.printf("b) i : %d%n", i--);
} while (i > 0);
}
}
|
cs |

do~while 문은 while문과 달리 조건식이 계산되기 전에 한번 실행됩니다.
do~while 블록 내의 모든 위치에서 break문을 사용하여 루프를 벗어날 수 있고, continue문을 사용하여 while식 계산문을 직접 단계별로 실행할수도 있습니다.
결과가 true면 루프의 첫번째 문에서 실행이 계속됩니다.
결과가 false면 do~while루프 다음의 첫번째 문에서 실행이 계속됩니다.
2. While
while문은 지정된 식이 false가 될 때까지 하나의 문 또는 문 블록을 반복합니다. 각 루프를 실행하기 전에 while식을 테스트하기 때문에 while루프는 실행되지 않을 수도 있습니다.
무조건 한번 이상 실행되는 do~while문과 다른 부분입니다.
|
1
2
3
4
5
6
7
8
9
10
11
|
public class While {
public static void main(String[] args) {
int i = 10;
while (i > 0) {
System.out.printf("a) i : %d%n", i--);
}
while (i > 0) {
System.out.printf("b) i : %d%n", i--);
}
}
}
|
cs |

3. For
우리가 가장 흔하게 사용하는 반복문입니다.
for루프는 지정된 식이 false가 될 때까지 하나의 문 또는 블록을 반복하여 실행합니다.
for루프를 사용하면 쉽게 배열을 반복하고 순차적으로 처리할 수 있습니다.
while문과 마찬가지로 실행 전 for 식을 테스트하기 떄문에 실행되지 않을 수도 있습니다.
아래 식은 무한루프를 걸 때의 예시입니다.
int형이기 떄문에 오버플로우가 일어나기 전에 종료시켜줘야 합니다.
|
1
2
3
4
5
6
7
8
9
10
|
public class For {
public static void main(String[] args) {
int i = 0;
for (;;) {
System.out.println(i++);
if (i == Integer.MAX_VALUE)
break;
}
}
}
|
cs |

이중for문을 만들어서 배열등을 쉽게 처리할 수 있습니다.
아래 식은 이중 for문의 예제입니다.
|
1
2
3
4
5
6
7
8
9
10
|
public class For2 {
public static void main(String[] args) {
for (int x = 0; x < 5; x++) {
for (int y = 0; y <= x; y++) {
System.out.print("*");
}
System.out.println("");
}
}
}
|
cs |

4. for (foreach) // 향상된 for문
Java에서는 foreach 예약어가 없습니다. 하지만 for문의 Syntax를 변형하여 동일하게 실행할 수 있습니다.
foreach문은 배열이나 컬렉션 또는 enum의 요소만큼 반복하여 실행합니다.
만약, 배열의 항목을 추가하거나 제거해야 한다면 for루프를 사용해야 합니다.
foreach에서 항목을 추가하거나 제거하면 java.util.ConcurrentModificationException을 발생 시킵니다.
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
import java.util.ArrayList;
public class Foreach {
public static void main(String[] args) {
ArrayList<Object> list = new ArrayList<Object>();
list.add(true);
list.add(1);
list.add(2);
list.add(false);
list.add("반복문");
for (Object obj : list) {
System.out.println(obj);
}
}
}
|
cs |

'Backend > Java' 카테고리의 다른 글
| 13. Java Method 의 OverLoading (0) | 2021.07.18 |
|---|---|
| 12. Java Method의 Signature (0) | 2021.07.18 |
| 10. 흐름 제어 점프문 (0) | 2021.07.18 |
| 9. 흐름 제어 선택문 (0) | 2021.07.17 |
| 8. 연산자(Operator) (0) | 2021.07.17 |