在Java中退出/终止while循环的最佳方法是什么?
例如,我的代码目前如下:
while(true){
if(obj == null){
// I need to exit here
}
}
答案 0 :(得分:166)
使用break
:
while (true) {
....
if (obj == null) {
break;
}
....
}
但是,如果您的代码看起来像完全,那么您可以使用正常的while
循环并将条件更改为obj != null
:
while (obj != null) {
....
}
答案 1 :(得分:6)
while(obj != null){
// statements.
}
答案 2 :(得分:4)
break
正在寻找:
while (true) {
if (obj == null) break;
}
或者,重构你的循环:
while (obj != null) {
// do stuff
}
或:
do {
// do stuff
} while (obj != null);
答案 3 :(得分:3)
在我的代码中使用while...do
查找while(true)
构造会让我的眼睛流血。请改用标准while
循环:
while (obj != null){
...
}
看看Yacoby在answer中提供的链接,以及这个链接。认真。
答案 4 :(得分:3)
您可以使用与任何逻辑检查中相同的规则在while()检查中执行多个条件逻辑测试。
while ( obj != null ) {
// do stuff
}
和
一样有用while ( value > 5 && value < 10 ) {
// do stuff
}
有效。通过循环在每次迭代中检查条件。只要一个不匹配,就会退出while()循环。你也可以使用break;
while ( value > 5 ) {
if ( value > 10 ) { break; }
...
}
答案 5 :(得分:2)
请查看Oracle的Java™ Tutorials。
但基本上,作为dacwe said,请使用break
。
如果可以的话,通常更清楚的是避免使用break并将检查作为while循环的条件,或者使用类似do while循环的方法。但这并不总是可行的。
答案 6 :(得分:0)
您可以使用上面的答案中已经提到的“break”。如果需要返回一些值。您可以像下面的代码一样使用“return”:
while(true){
if(some condition){
do something;
return;}
else{
do something;
return;}
}
在这种情况下,这是在一个返回某种值的方法下。
答案 7 :(得分:0)
您可以使用“ break”来中断循环,这将不允许循环处理更多条件
答案 8 :(得分:0)
要退出while循环,请使用Break;
,这将不允许循环处理放置在内部的任何条件,请确保将其放入循环内,因为您无法将其置于循环外
答案 9 :(得分:-1)
如果你写 while(true)。它意味着循环不会在任何情况下停止以停止此循环,您必须在while块之间使用break语句。
package com.java.demo;
/**
* @author Ankit Sood Apr 20, 2017
*/
public class Demo {
/**
* The main method.
*
* @param args
* the arguments
*/
public static void main(String[] args) {
/* Initialize while loop */
while (true) {
/*
* You have to declare some condition to stop while loop
* In which situation or condition you want to terminate while loop.
* conditions like: if(condition){break}, if(var==10){break} etc...
*/
/* break keyword is for stop while loop */
break;
}
}
}