Break문
자신이 포함 된 하나의 반복문 또는 switch문을 빠져나온다.
주로 if문과 함께 사용해서 특정 조건을 만족하면 반복문을 벗어나게 한다.
예제>
class BreakBasic
{
public static void main(String[] args)
{
int i = 1;
boolean seach = false;
while (i < 100)
{
if (i % 5 ==0 && i % 7 ==0) // 5와 7의 공배수를 찾음
{
seach = true;
break; //브레이크가 없을 경우 계속 돌아가기 때문에 없음, if문의 break는 17번줄로 나감
}
i++;
}
if (seach)
System.out.println("찾는 정수 :" + i);
else
System.out.println("찾지 못했습니다");
}
}
예제2> 반복문 앞에 라벨(이름)을 붙이고 그 이름을 break, continue와 같이 사용함으로써 해당 라벨로 반복문을 빠져나가거나 반복을 건너뛰게 할 경우 사용
class BreakPoint
{
public static void main(String[] args)
{
/*
for (int i = 1; i < 10; i++)
{
for (int j = 1; j < 10; j++)
{
System.out.println("[" + i + "," + j + "]");
if (i % 2 ==0 && j % 2 == 0) //i, j 둘다 짝수이면...
break; //하나의 루프문을 빠져나감, 만약 두개 이상의 루프문을 빠져나가고 싶으면.. 라벨을 붙임
}
}
*/
outerLoop: //라벨을 붙여줌
for (int i = 1; i < 10; i++)
{
for (int j = 1; j < 10; j++)
{
System.out.println("[" + i + "," + j + "]"); //1,1 - 1,2 - 1,3 .... 1,9 - 2.1, 2.2 찍고 outerLoop로 빠져나감
if (i % 2 ==0 && j % 2 == 0)
break outerLoop;
}
}
}
}
continue문
자신이 포함된 반복문의 끝으로 이동한다. (다음 반복으로 넘어간다)
continue문 이후의 문장들은 수행되지 않는다.
주의! 필자는 if문이든 for문이든 중괄호{}를 하는 습관이 있는데.. continue문의 경우 한문장의 실행문장에 대하여 줄괄호 할 경우 예상치 못한 에러(unreachable statement)가 발생함으로 주의 하세요~
예제3>
class ContinueBasic
{
public static void main(String[] args)
{
int i = 0, count = 0;
while (i ++ < 100)
{
if (i % 5 !=0 || i % 7 !=0) // 5와 7의 공배수를 찾음=if (i % 5 ==0 && i % 7 ==0)
continue; //참값으로 실행되면 15번줄로 감,
//결국 5와 7의 공배수가 나오기 전까지는 계속 참 값이므로 출력하지 않고 카운터도 되지 않다가
//거짓값(5와 7의 공배수)가 되면 출력되고 카운터가 올라감
System.out.println(i);
count++;
}
System.out.println("5와 7의 공배수의 개수는 " + count);
}
}
예제4>
class ContinueBasic1
{
public static void main(String[] args)
{
for (int i=0; i <=10; i++) {
if (i % 2 == 0)
continue;
System.out.println(i);
//if 조건이 참일 때, continue가 실행되어 8번줄은 건너뛰고 9번줄로 오게 됨,
//결국 참 일 때의 i값은 출력하지 않음
}
}
}
'공부합시다' 카테고리의 다른 글
Window Live Writer 오프라인으로 블로그 포스팅! (0) | 2016.02.02 |
---|---|
파비콘 (ICO) 쉽게 만들기 (1) | 2016.01.23 |
[이클립스] 초기(default) 소스 변경하기 (0) | 2015.06.05 |
[JAVA] 생성자 (0) | 2015.05.07 |
[자바문법] 예제: 메소드, return, 구구단 (0) | 2015.05.07 |
[JAVA] 반복문 - for, while, do-while (0) | 2015.05.06 |
[JAVA] 조건문 - if, switch (0) | 2015.05.06 |
[JAVA] [연산자3] 연산자 우선순위, 비교연산자 (0) | 2015.05.05 |
[JAVA] [연산자2] 단항연산자, 삼항연산자 (0) | 2015.05.05 |
[JAVA] [연산자1] 산술연산자, 대입연산자 (0) | 2015.05.05 |