[Java/자바]제어문(5) -break, continue문
안녕하세요! 오늘은 제어문의 진짜 마지막 부분 break, continue문에 대해 알아볼게요!
break문
이름에서부터 뭔가 느낌이 오시죠? switch문에서도 사용했었는데
반복문 안에서 반복을 멈추고 싶을 때 사용하는 문법입니다.
break문 구조
반복문{
if(반복을 멈출 조건){
}
}
break문 사용 예시
break문을 사용할 때는 주로 무한 반복문을 사용할 때 사용합니다.
무한반복
말 그대로 반복이 멈추지 않고 계속해서 실행되는 것을 의미합니다.
주로 키오스크와 같이 계속 실행되어야 하는 경우 무한반복을 사용합니다.
무한 반복문 구조
while문을 사용했을 때의 무한 반복문을 봐보도록 할게요
while(true){
반복할 명령
}
조건식이 항상 참일 경우 반복이 멈추지 않습니다.
이렇게 되면 반복할 명령이 계속해서 무한으로 실행됩니다.
자 그러면 바로 무한 반복문에서 break문을 사용해 보도록 하죠!
public class BreakEx1 {
public static void main(String[] args) {
Scanner sc= new Scanner(System.in);
int num;
while(true) {
System.out.println("숫자 입력:");
num=sc.nextInt();
if(num==0) {
System.out.println("프로그램 종료");
break;
}
System.out.println("입력 값"+num);
}
}
자 우선 저희가 아는 while문입니다.
근데 while(true) 무한반복 문이죠?
따라서 while문 안에 있는
System.out.println("숫자 입력:");
num=sc.nextInt();
따라서 숫자를 입력받는 실행문이 계속해서 실행되게 됩니다.
자 저희는 특정 숫자를 입력받으면 이 while문을 종료해주고 싶어요 따라서 조건을 걸어줍니다.
if(num==0) => num이라는 변수 즉, 입력받은 변수가 0이라는 정수 값을 입력받으면
System.out.println("프로그램 종료");
break;
"프로그램 종료"라는 문장을 출력하고
break; => while무한 반복문을 탈출하게 됩니다.
출력 결과
입력을 무한으로 받다가 0을 입력하니 프로그램을 종료한 것을볼 수 있겠네요.
continue문
continue문은 "아래 명령을 무시하고, 다음 반복을 실행해라!"라는 의미를 갖습니다.
continue문의 구조
반복문{
if(다음 반복을 실행할 조건) {
continue
}
}
continue문 예시
public class ContinueEx {
public static void main(String[] args) {
Scanner sc= new Scanner(System.in);
int i=0;
while(true) {
System.out.println("숫자입력: (0:종료)");
i=sc.nextInt();
if(i==0) {
System.out.println("프로그램 종료");
break;
}
else if(i<0) {
System.out.println("명령 무시");
continue;
}
System.out.println("입력한 숫자: "+i);
}
}
}
continue예시는 위의 break문 예시에 밑에 continue문만 추가했습니다.
따라서 사용자가 0을 입력하면 "프로그램을 종료" 하고
만일 else if(i <0) i가 0보다 작은 수 즉, 음수를 입력한 것이겠죠?
그렇다면 "명령 무시"를 출력하고 continue 명령을 무시하고 다시 while문으로 들어갑니다.
따라서 음수의 값을 사용자가 입력했다면 입력을 하지 않고 while문을 다시 돌리겠다. 이 말입니다.
출력 결과
5, 10을 입력했을 때는 입력한 숫자를 보여주지만
-5라는 음수 값을 입력하면 명령을 무시하고 다시 숫자 입력: 칸이 나옵니다.
자 이상으로 오늘은 제어문 break, continue문에 대해 알아보았습니다.
이상으로 제어문 파트는 끝났고 다음 시간에는 배열에 대하여 알아보는 시간을 갖겠습니다.
이상으로 포스팅 마치겠습니다 ㅎㅎ!!
글 읽어주셔서 감사합니다~
