Подтвердить что ты не робот

Как пропустить итерацию/цикл во время цикла

Есть ли элегантный способ пропустить итерацию во время цикла?

Что я хочу сделать, это

  while(rs.next())
  {
    if(f.exists() && !f.isDirectory()){
      //then skip the iteration
     }
     else
     {
     //proceed
     }
  }
4b9b3361

Ответ 1

while(rs.next())
  {
    if(f.exists() && !f.isDirectory())
      continue;  //then skip the iteration

     else
     {
     //proceed
     }
  }

Ответ 2

Пока вы можете использовать continue, почему бы просто не инвертировать логику в вашем if?

while(rs.next())
{
    if(!f.exists() || f.isDirectory()){
    //proceed
    }
}

Вам даже не нужен else {continue;}, поскольку он будет продолжаться в любом случае, если условия if не выполняются.

Ответ 3

Попробуйте добавить continue;, где вы хотите пропустить 1 итерацию.

В отличие от ключевого слова break, continue не завершает цикл. Скорее, он переходит к следующей итерации цикла и прекращает выполнение каких-либо дальнейших операторов в этой итерации. Это позволяет нам обойти остальные утверждения в текущей последовательности, не останавливая следующую итерацию через цикл.

http://www.javacoffeebreak.com/articles/loopyjava/index.html

Ответ 4

Вы ищете инструкцию continue;.

Ответ 5

Вам не нужно пропустить итерацию, так как остальная часть находится в инструкции else, она будет выполняться только в том случае, если условие не соответствует действительности.

Но если вам действительно нужно пропустить его, вы можете использовать оператор continue;.

Ответ 6

while (rs.next())
{
  if (f.exists() && !f.isDirectory())
    continue;

  //proceed
}