如何在while循环中跳过迭代/循环

20 java

有没有一种优雅的方法可以在while循环中跳过迭代?

我想做的是

  while(rs.next())
  {
    if(f.exists() && !f.isDirectory()){
      //then skip the iteration
     }
     else
     {
     //proceed
     }
  }
Run Code Online (Sandbox Code Playgroud)

Ach*_*Jha 47

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

     else
     {
     //proceed
     }
  }
Run Code Online (Sandbox Code Playgroud)


Que*_*atl 11

虽然你可以使用a continue,为什么不反转if中的逻辑呢?

while(rs.next())
{
    if(!f.exists() || f.isDirectory()){
    //proceed
    }
}
Run Code Online (Sandbox Code Playgroud)

else {continue;}如果if不满足条件,你甚至不需要它,因为它会继续.


Mas*_*uso 8

尝试添加 continue;要跳过1次迭代的位置.

与break关键字不同,continue不会终止循环.相反,它会跳到循环的下一个迭代,并在此迭代中停止执行任何进一步的语句.这允许我们绕过当前序列中的其余语句,而不必停止循环中的下一次迭代.

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


SLa*_*aks 6

你正在寻找continue;声明.


Cyr*_* Ka 5

您不需要跳过迭代,因为其余部分都在else语句中,只有在条件不成立时才会执行。

但如果你确实需要跳过它,你可以使用该continue;语句。