是否有一种优雅的方法可以在while循环中跳过迭代?
我想做的是
while(rs.next())
{
if(f.exists() && !f.isDirectory()){
//then skip the iteration
}
else
{
//proceed
}
}
答案 0 :(得分:45)
while(rs.next())
{
if(f.exists() && !f.isDirectory())
continue; //then skip the iteration
else
{
//proceed
}
}
答案 1 :(得分:11)
虽然您可以使用continue
,但为什么不反转if?
while(rs.next())
{
if(!f.exists() || f.isDirectory()){
//proceed
}
}
如果不满足else {continue;}
条件,您甚至不需要if
,因为它会继续。
答案 2 :(得分:8)
尝试将continue;
添加到要跳过1次迭代的位置。
与break关键字不同,continue不会终止循环。相反,它会跳到循环的下一个迭代,并在此迭代中停止执行任何进一步的语句。这允许我们绕过当前序列中的其余语句,而不会停止循环中的下一次迭代。
http://www.javacoffeebreak.com/articles/loopyjava/index.html
答案 3 :(得分:6)
您正在寻找continue;
声明。
答案 4 :(得分:4)
您不需要跳过迭代,因为其余部分位于else
语句中,只有在条件不为真的情况下才会执行。
但是如果你真的需要跳过它,你可以使用continue;
语句。
答案 5 :(得分:3)
while (rs.next())
{
if (f.exists() && !f.isDirectory())
continue;
//proceed
}