티스토리 뷰

반응형

#break

switch문을 배울 때 각 case문의 영역을 구분하는 역할로 쓰였던 break문을 반복문에서도 사용할 수 있는데,

switch문에서 그랬던 것처럼 자신이 포함된 가장 가까운 반복문을 벗어나며 주로 if문과 함께 사용되어 특정 조건을 만족할 때 반복문을 벗어난다.

 

break문 예제)

public class ex4_break {

	public static void main(String[] args) {
		int sum = 0;
		int i = 0;
		
		while(true) {
			if(sum > 100)
			break;
		++i;
		sum += i;
		} //while문 끝
		
		System.out.println("i = " + i);
		System.out.println("sum = " + sum);
	}
}

brak문 예제) 결과

위 예제는 숫자를 1~n까지 더했을 때, 몇 까지 더하면 합이 100을 넘는지 알아보는 예제이다.

while문에 조건식을 'true'로 주면 무한 반복문이 되는데, 이것을 빠져나가기 위해서는 break문이 필요하다. 

while문 안 조건문인 if문의 조건식이 참일 경우에 break문이 수행되며, break의 아래 문장인 '++i;'와 'sum +=i;'은 실행되지 않고 while문을 완전히 빠져나가게 된다.  이처럼 무한 반복문에서 벗어나기 위해서는 조건문과 break문이 항상 같이 사용된다.

 

#continue

continue은 전체 반복 중에 특정 조건을 만족하는 경우를 제외하고자 할 때 유용하다.

반복문 내에서만 사용되고, 반복이 진행되는 도중에는 반복문의 끝으로 이동하여 다음 반복문으로 넘어간다.

주로 if문과 함께 사용되어 특정 조건을 만족하는 경우에 continue문 이후의 문장들을 수행하지 않고 다음 반복으로 넘어가서 계속 진행하도록 한다.

 for문의 경우 증감식으로 이동하며, while문과 do-while문의 경우 조건식으로 이동한다.

public class ex_contine {

	public static void main(String[] args) {
		for(int i=0; i<=10; i++) {
			if(i%2==0) { 
				continue;
			}
			System.out.println(i);
		}
	}
}

위의 예제는 1과 10 사이의 숫자를 출력하되 continue문을 이용하여 2의 배수는 제외하는 예제이다.

if문의 조건식이 참인 경우 continue문은 아래 문장을 출력하지 않고 if문의 블럭{}의 끝으로 이동한 뒤 for문으로 돌아가 i를 증가시키고, 조건식이 거짓이 될 때까지 반복된다.

반응형