JAVA_break,continue

박예린·2022년 12월 22일
0

Java

목록 보기
12/23

break문

: loop문 정지 -> escape
: loop문과 같이 사용함(for, while, do while, switch)

switch(변수){
case 값1:
처리1
break;
case 값2:
처리2
break;
}

for(int i=0; i< 10; i++) {
처리1
if(조건){
break;
}
처리2
}

w = 0;
while(w<10) {
처리1
if(조건){
break;
}
처리2
w++;
}

            for(int i=0; i< 10; i++) { //for반복문
			System.out.println("for loop = " + i);
			
			if(i == 5 ) { //if 조건문
				System.out.println("i == 5입니다.");
				break;
			}
		}
		
		//ex)-값이 나오면 탈출하는 예제
		int number[] = {13, 45, 27, -36, 78}; //array
		
		for(int i=0; i<number.length; i++) {
			System.out.println("number[" + i + "] = " + number[i]); //출력을 먼저 한 다음에 밑에 if문 실행
			
			if(number[i] < 0) { //0보다 작으면(음수이면)
				break; //탈출
			}
		}
		
		//2중 for문
		for(int i=0; i<10; i++) {
			System.out.println("i = " + i);
			for(int j=0; j<8; j++) {
				System.out.println("\tj = " + j);
				//조건문
				if(i == 5 && j == 4) {
					break;
				}
			}
		}
		
		
		//1.loop문 수에 맞춰서 break를 설정(loop문 하나당 break 하나)
		boolean b = false;
		
		for(int i=0; i<10; i++) {
			System.out.println("i = " + i);
			
			for(int j=0; j<8; j++) {
				System.out.println("\tj = " + j);
				
				//조건문
				if(i == 5 && j == 4) {
					b = true; 
				}
				if(b == true ) { 
					break;	
				}
			}
			if(b == true) {
				break;
			}
		}
		
		//2.break 설정 loopout 이름은 알아서 적는 것
		loopout:for(int i=0; i<10; i++) {
			System.out.println("i = " + i);
			
			for(int j=0; j<8; j++) {
				System.out.println("\tj = " + j);
				
				if(i == 5 && j == 4) {
					break loopout;
				}
			}
		}

continue문

: skip(생략), loop문 유지
: loop문과 같이 사용(한마디로 단독 사용 불가능 -break도 단독사용 불가능)

while(조건){
처리1

if(조건){
	continue; //처리2, 연산식 처리는 하지 않고 다시 while문의 조건으로 올라가서 처리함(처리1), 조건이 
}
 
처리2

연산식 }

continue 간단 예제

           for(int i=0; i<10; i++) {
			System.out.println("i = " + i);
			
			System.out.println("for 처리1");
			
			if(i > 5) { //i가 5보다 클 때(6,7,8,9) 밑에 처리2는 skip하고 처리1로 올라감
				continue; //loop문을 빠져나가는 것이 아님!
			}
			
			System.out.println("for 처리2");
		}
       
             int array[] = {2, 6, 3, -4, 5};

             for(int i=0; i<array.length; i++) {

                 if(array[i] <= 0) { //음수였을 때
                     continue;
                 }

                 System.out.println("array[" + i + "] =" + array[i]);
             } 

while문과 for문 연산자 위치의 차이

           for(int i= 0; i<3; i++) { //연산식이 if continue위에 존재
			System.out.print("number" + i + "=");
			number = sc.nextInt();
			
			if(number <= 0) {
				continue;
			}
			
			System.out.println("number : " + number);
		}
		
		
            int w = 0;
            while(w < 3) {
            //w++; -> 이 곳에 연산식이 온다면 위에 for문과 같은 결과값을 보임
            System.out.print("number " + w + "= ");
            number = sc.nextInt();

            if(number <= 0) {
                continue;
            }

            System.out.println("number : " + number);
            w++; //for문과는 다르게 연산식이 처리문 밑에 있으므로 w가 증가되지 않음
                     //-값을 입력하면 빠져나가지 못함
                     //연산식이 if continue 밑에 존재

            }
profile
개발자를 꿈꾸는 귀여운 나

0개의 댓글