본문 바로가기
🌈 백엔드/JAVA_기초

JAVA_개념_break 문_continue 문

by 개발자 알마 2023. 2. 23.
반응형

 

[1] break 문


(1) break  중간에 멈춘다 

  • 감싸고 있는 제어문을 중간에 멈추고 빠져나온다 
  • 반복문에서는 if조건문과 같이 사용하여 조건이 참이면 반복수행을 멈추고 빠져나온다 
  • 중첩 반복문의 경우 break문이 포함된 반복문만 빠져 나온다
  • 조건이 만족되면 그 반복문을 실행후 벗어난다. 반복문이 종료된다  

 

(2) break 예시 

  • 중첩 반복문에서 break가 포함된 경우 이후 반복은 되지 않는다 
for(int i = 0; i< 5; i++) {
      
      if(i==2) {
      		break; ------> (break가 포함된 반복문부터 반복되지 않는다)
      }
      for(int j=0; j < i+1; j++ {
    		System.out.println("*");
      };
};

-------> 결과값
*
**
(값 미출력)

 

  • while 반복문에서 if조건문이 참이면 멈추고 반복문을 빠져나온다 
while (i < 5 ) {
	if (i ==2) {
    	i++;
        break; ----> break 포함된 인덱스부터 미출력하고 반복하지 말아라
    }
}
System.out.println(i++);

------> 결과값
0
1
(값미출력)

 

 

[2] continue 문


(1) continue 무시하고 진행한다

  • 반복문 내부에서 if조건문과 사용한다 
  • 조건이 참이면 반복문 내부 수행을 하지 않고 건너뛴다 
  • continue를 만나면 반복문의 끝으로 이동하여 다음 반복문으로 넘어간다 

(2) continue 예시

  • 중첨 반복문에서 if조건문이 참이라면 건너뛰고 다음 반복을 진행한다 
for(int i = 0; i< 5; i++) {
      
      if(i==2) {
      		continue; ------> (continue가 포함된 반복문 제외하고 반복된다)
      }
      for(int j=0; j < i+1; j++ {
    		System.out.println("*");
      };
};

-------> 결과값
*
**
(값 미출력)
****
*****

 

  • while 반복문에서 if조건문이 참이라면 건너띄고 다음 반복을 진행한다 
while (i < 5 ) {
	if (i ==2) {
    	i++;
        continue; ----> contine가 포함된 인덱스는 미출력 하고 반복해라 
    }
}
System.out.println(i++);

------> 결과값
0
1
(값미출력)
3
4

 

[3] 중첩 반복문 적용


(1) 이름이 있는 반복문 

반복문에 이름을 붙인뒤 break 걸때 이름을 적으면 그 반복문만 빠져나올수 있다

Loop1 : for(int i=2; i <=9; i++) {
			for(int j=1; j <=9; j++) {
            	if( j==5 )
                	break Loop1;
            	System.out.println(i+"x"+j);
			}
		}
	}
}

2x1
2x2
2x3
2x4

 

(2) 이름 반복문 & break 활용 예시

 

> 계산할 유형의 메뉴 선택

메뉴가 0 이면 오류로 반복문 중지

메뉴가 1,2,3이 아니면 오류로 continue로 재선택 다시 등장 

 

> 무한반복문 

> 계산할 값이 0이거나 99이면 반복문을 중지한다 

값을 입력하면 계산되고 다시 값을 입력하라고 반복된다 

 

package ch01;
import java.util.*;

public class HelloJava {

	public static void main(String[] args) {
		
		int menu =0;
		int num =0;
		
		Scanner scanner = new Scanner(System.in);
		
		outer:
		while(true) {
			System.out.println("메뉴를 선택하세요 ");

			System.out.println("메뉴1 : square ");
			System.out.println("메뉴2 : square root 제곱근 ");
			System.out.println("메뉴3 : log ");
			
			String input =scanner.nextLine();
			menu =Integer.parseInt(input);
			
			
			if(menu==0) {
				System.out.println( "오류 ");
				break;
			}else if(!(1<= menu && menu <= 3)) { //1,2,3
				System.out.println( "잘못입력되었습니다. 다시 입력해주세요");
				continue;
			}
			
			for(;;) {
				
				System.out.println("계산할 값을 입력하세요 ");
				input =scanner.nextLine();
				num =Integer.parseInt(input);
			
			
				if(num ==0) break;
				if(num ==99) break outer;
				
				switch(menu) {
			
					case 1 : System.out.println( num * num); break;
					case 2 : System.out.println( (int)Math.sqrt(num)); break;
					case 3 : System.out.println( Math.log(num)); break;
				
				}

			}
			
		}
				
	}

}
반응형

'🌈 백엔드 > JAVA_기초' 카테고리의 다른 글

java.class 파일 작성하기 (기초)  (0) 2023.05.22
정적페이지 동적페이지  (0) 2023.03.20
JAVA 개념_조건문  (0) 2023.02.16
JAVA 개념_ 반복문  (0) 2023.02.13
JAVA 개념_ 자료형  (0) 2023.02.13

댓글