Java에서 For 루프의 다음 반복으로 이동


답변:


344
continue;

continue; 키워드는 호출시 다음 반복을 시작합니다

예를 들어

for(int i= 0 ; i < 5; i++){
 if(i==2){
  continue;
 }
System.out.print(i);
}

이것은 인쇄됩니다

0134

보다


2
break루프 : 건너 뜁니다
Shajeel 아프

18
오히려 'break'키워드는 루프를 종료합니다.
rogue lad

56

이 시도,

1. If you want to skip a particular iteration, use continue.

2. If you want to break out of the immediate loop use break

3 If there are 2 loop, outer and inner.... and you want to break out of both the loop from the inner loop, use break with label.

예 :

계속하다

for(int i=0 ; i<5 ; i++){

    if (i==2){

      continue;
    }
 }

예 :

단절

for(int i=0 ; i<5 ; i++){

        if (i==2){

          break;
        }
     }

예 :

라벨로 끊다

lab1: for(int j=0 ; j<5 ; j++){
     for(int i=0 ; i<5 ; i++){

        if (i==2){

          break lab1;
        }
     }
  }

5
라벨도 계속 있습니다.
Carcamano 2016 년

35

현재 반복을 건너 뛰려면을 사용하십시오 continue;.

for(int i = 0; i < 5; i++){
    if (i == 2){
        continue;
    }
 }

전체 루프에서 벗어나야합니까? 사용하다break;

for(int i = 0; i < 5; i++){
    if (i == 2){
        break;
    }
}

하나 이상의 루프 사용을 중단해야하는 경우 break someLabel;

outerLoop:                                           // Label the loop
for(int j = 0; j < 5; j++){
     for(int i = 0; i < 5; i++){
        if (i==2){
          break outerLoop;
        }
     }
  }

*이 경우 코드에서 점프 할 점을 표시하지 않고 루프에 레이블을 지정합니다. 따라서 휴식 후 코드는 루프 직후에 계속됩니다!

중첩 루프 use에서 하나의 반복을 건너 뛸 필요가 continue someLabel;있지만 모두 반복 할 수 있습니다.

outerLoop:
for(int j = 0; j < 10; j++){
     innerLoop:
     for(int i = 0; i < 10; i++){
        if (i + j == 2){
          continue innerLoop;
        }
        if (i + j == 4){
          continue outerLoop;
        }
        if (i + j == 6){
          break innerLoop;
        }
        if (i + j == 8){
          break outerLoop;
        }
     }
  }

8

다른 모든 답변에서 언급했듯이 키워드 continue는 현재 반복이 끝날 때까지 건너 뜁니다.

또한 당신은 사용 후 루프 시작 레이블을 할 수 있습니다 continue [labelname];또는 break [labelname];중첩 루프에서 무슨 일이 일어나고 있는지 제어 할 수 :

loop1: for (int i = 1; i < 10; i++) {
    loop2: for (int j = 1; j < 10; j++) {
        if (i + j == 10)
            continue loop1;

        System.out.print(j);
    }
    System.out.println();
}


당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.