1. continue 와 break
반복문 안에서 반복문의 흐름을 인위적으로 변경시킬 때 사용된다. 때문에 반복문의 밖에서 사용할 경우 에러가 발생하게 된다.
for반복문, while반복문, dowhile반복문 이 3가지 안에서 사용할 수 있다.
- break는 반복문을 멈추고 continue는 반복문을 계속 실행한다.
- continue보다 밑에 있는 구문은 실행되지 않는다.
(1) 반복문for 에서 break 의 사용
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
package ContinueAndBreak;
public class ContinueAndBreakTest1 {
public static void main(String[] args) {
int i=0;
for(i=0; i<10; i++) {
if(i>5) break;
System.out.println("Hello");
}
System.out.println("i=" + i);
}
}
|
cs |
- 출력값
Hello
Hello
Hello
Hello
Hello
Hello
i=6
- 설명
for(i=0; i<10; i++)에서 i는 0과 10사이에서 1씩 증가하는 값을 갖는다. for문의 중괄호 내용을 보면 if(i>5) break; 으로 i의 값이 5보다 커지게 되면 break를 만나 식을 빠져나가게 된다.
i=0 일 때, Hello 출력 → i++
i=1 일 때, Hello 출력 → i++
i=2 일 때, Hello 출력 → i++
i=3 일 때, Hello 출력 → i++
i=4 일 때, Hello 출력 → i++
i=5 일 때, Hello 출력 → i++
i=6일 때 if문의 조건 (i>5)을 만족하지 못하고 break를 만나 식을 빠져나가고 반복문은 종료 된다.
i의 값은 6으로 출력된다.
(2) 반복문 for에서 continue 의 사용
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
package ContinueAndBreak;
public class ContinueAndBreakTest2 {
public static void main(String[] args) {
int i=0;
for(i=0; i<10; i++) {
if(i>5) continue;
System.out.println("Hello");
}
System.out.println("i=" + i);
}
}
|
cs |
- 출력값
Hello
Hello
Hello
Hello
Hello
Hello
i=10
- 설명
for(i=0; i<10; i++)에서 i는 0과 10사이에서 1씩 증가하는 값을 갖는다. for문의 중괄호 내용을 보면 if(i>5) continue; 으로 i의 값이 5보다 커지게 되면 continue를 만나 식을 빠져나가게 된다.
i=0 일 때, Hello 출력 → i++
i=1 일 때, Hello 출력 → i++
i=2 일 때, Hello 출력 → i++
i=3 일 때, Hello 출력 → i++
i=4 일 때, Hello 출력 → i++
i=5 일 때, Hello 출력 → i++
여기까지는 예문 1의 break와 내용이 똑같지만, break는 식을 종료시키고 continue는 반복문을 계속 실행시킨다.
i=6이 되었을 때 if문의 조건 (i>5)을 만족하지 못하고 continue를 만나 식을 빠져나가게 되고
이후 i++ 되어 i=7
다시 i++ 되어 i=8
다시 i++ 되어 i=9
다시 i++ 되어 i=10이 되고
여기서 i=10의 값을 갖게되고 for문의 조건인 (i<10)을 만족하지 못해 식이 종료되고 i=10의 값으로 ("i=" + i)을 출력하게 된다.
'Java > Day2' 카테고리의 다른 글
[Java] 논리 NOT 연산자 (0) | 2021.10.31 |
---|---|
[Java] continue 와 break 예문 & 논리 OR연산자, 논리 AND 연산자 (0) | 2021.10.31 |
[Java] Selection sort 선택 정렬 알고리즘 (0) | 2021.10.31 |
치환 (0) | 2021.10.31 |
알고리즘의 차이. 더 효율이 좋은 식에 대한 비교 (0) | 2021.10.31 |