我想有一个while循环,如果某个条件为真,不要在它下面执行代码,然后继续while循环。 这是一些伪代码:
boolean poop
while (poop){
if (player.isAwesome()){
Continue doing while loop but do not execute below code
}
poop = false;
}
是的,我可以使用这样的东西:
boolean poop
while (poop){
boolean stopPoop = false;
if (player.isAwesome()){
stopPoop = true;
}
if (!stopPoop){
poop = false;
}
}
然而,这有点混乱和不方便,我想知道是否有更好的方法?
答案 0 :(得分:5)
boolean poop = true;
while (poop){
if (player.isAwesome()){
//Continue doing while loop but do not execute below code
continue;
}
poop = false;
}
是的,正确使用continue
关键字。如果您想要摆脱循环,可以使用break
关键字
如果您有嵌套循环,那么您也可以继续使用标签。
答案 1 :(得分:5)
我不认为需要大便变量。 你不能用它。
while (player.isAwesome()){
Continue doing while loop but do not execute below code
}
答案 2 :(得分:4)
在诸如此类的情况下很难预测何时应该终止循环,我更喜欢使用
do {
if (player.isAwesome()){
//Continue doing while loop but do not execute below code
continue;
}
// This code will only execute once
} while (false);
这消除了对布尔标志的需要,该标志污染了循环外的范围。
我不鼓励for (;;)
或while (true)
,因为随着时间的推移,维护以这种方式编写的代码会引入无限循环。
答案 3 :(得分:1)
我假设你使用java进行编码。 你需要做的就是写
continue;
在您需要转到while循环检查语句的行。所以:
boolean poop
while (poop){
if (player.isAwesome()){
continue;
}
poop = false;
}