Daily coding

Java Basic : day 2 - Break ( Escape keyword) 본문

Language/Java_basic

Java Basic : day 2 - Break ( Escape keyword)

sunnnkim 2019. 11. 20. 19:04

break : loop문 탈출용 (escape)
  - 단독으로 쓸 수 없음
  - switch, for, while, do while

 ( * return : 메소드와 자주 사용하는 탈출용 키워드 ) 
             
for문 예시 
  for(int i =0; i<100 ; i++){
          if( str[i].equals("홍길동"){
                break;
  }
  }
위의 코드는 str 배열에 "홍길동"이라는 데이터를 찾으면 바로 for문을 종료시킴


for(int i=0; i<10; i++) {
       System.out.println("i = "+ i);
       if( i == 4) //i = 4일 때 종료
              break;
}

배열 예시
char cArr[] = {'A', 'B', 'C','D', 'E'};
for (int i = 0; i <cArr.length ; i++) {
       System.out.println(i + " : " + cArr[i]);
       if(cArr[i] == 'D') {
              System.out.println("\'D\' 문자를 찾았습니다.배열ch의 " + i + "번째 데이터.");
              break;
       }//D를 찾으면 for문 종료
}

 


이중 for문 탈출


for (int i = 0; i < 10; i++) {
       System.out.println("i = " + i);
       for (int j = 0; j < 5; j++) {
              System.out.println("\tj = " + j);
              if(i==4 && j ==3) {
              break;

              //이렇게 되면 break가 한번만 적용되어 해당 조건만 종료됨
              }
       }
}

* 탈출방법 1
boolean b = false;
for (int i = 0; i < 10; i++) {
       System.out.println("i = " + i);
       for (int j = 0; j < 5; j++) {
              System.out.println("j = " + j);
              if(i==4 && j ==3) {
                     b = true;
              }
              if( b ) break;
             }
       if( b ) break;
}
// b에 break를 걸지 말지를 값을 통해 정해준다.


* 탈출방법 2
outer :
       for (int i = 0; i < cArr.length; i++) {
              System.out.println("i = " + i);
              for (int j = 0; j < cArr.length; j++) {
                     System.out.println("\tj = " + j);
                     if(i==4 && j ==3) {
                     break outer;
                     }
              }
       }

해당 for문에 명칭을 정해주고 

break 뒤에 그 명칭을 호출하면 해당 부분이 종료됨


( 자바만 가능함, C는 안된다고 함 )


}
}