如何从while循环内的if条件中断while循环?
Posted
技术标签:
【中文标题】如何从while循环内的if条件中断while循环?【英文标题】:How to break a while loop from an if condition inside the while loop? 【发布时间】:2014-06-26 09:20:31 【问题描述】:我想打破下面有 if 语句的格式的 while 循环。如果该 if 语句为真,则 while 循环也必须中断。任何帮助将不胜感激。
while(something.hasnext())
do something...
if(contains something to process)
do something
break if condition and while loop
【问题讨论】:
你在问题中说出了答案! break if loopdo
while loop
让我很困惑。我以为有两个循环。
你不能说if(true)break;
。
【参考方案1】:
break
关键字正是这样做的。这是一个人为的例子:
public static void main(String[] args)
int i = 0;
while (i++ < 10)
if (i == 5) break;
System.out.println(i); //prints 5
如果您实际使用的是嵌套循环,则可以使用to use labels。
【讨论】:
@Codelearn14 你一直这么说,但不管你说多少次都是假的。 @Codelearn14 你能发布代码示例来证明你在说什么吗?也许if
的条件永远不会满足,从而阻止break
被调用。
是的,我也这么认为。非常抱歉,感谢您的帮助
@Codelearn14 我添加了一个简单的示例,您可以运行它来确认行为。
我真希望@Codelearn14 没有删除他们的 cmets,因为这个论点看起来很搞笑。【参考方案2】:
“如果”不是循环。只需在 "if" 中使用 break,它就会从 "while" 中跳出。
如果您需要使用真正的嵌套循环,Java 具有标记中断的概念。你可以在循环之前放一个标签,然后用标签的名字作为参数来中断。它将在标记循环之外中断。
【讨论】:
【参考方案3】:while(something.hasnext())
do something...
if(contains something to process)
do something...
break;
只需使用break语句即可;
例如:这只是打印“Breaking...”
while (true)
if (true)
System.out.println("Breaking...");
break;
System.out.println("Did this print?");
【讨论】:
以上是关于如何从while循环内的if条件中断while循环?的主要内容,如果未能解决你的问题,请参考以下文章