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