Jaki jest najlepszy sposób na wyjście / zakończenie pętli while w Javie?
Na przykład mój kod jest obecnie następujący:
while(true){
if(obj == null){
// I need to exit here
}
}
Odpowiedzi:
Znalezienie while...do
konstruktu z while(true)
w moim kodzie spowodowałoby krwawienie z oczu. while
Zamiast tego użyj standardowej pętli:
while (obj != null){
...
}
I spójrz na link, który Yacoby podał w swojej odpowiedzi , i to też. Poważnie.
W ramach sprawdzania while () można przeprowadzić wiele testów logicznych warunków, używając tych samych reguł, co w przypadku każdego sprawdzenia logicznego.
while ( obj != null ) {
// do stuff
}
działa, tak jak działa
while ( value > 5 && value < 10 ) {
// do stuff
}
są ważne. Warunki warunkowe są sprawdzane przy każdej iteracji w pętli. Gdy tylko jeden nie pasuje, pętla while () jest zamykana. Możesz także użyć przerwy;
while ( value > 5 ) {
if ( value > 10 ) { break; }
...
}
Możesz użyć „przerwy”, o której mowa już w odpowiedziach powyżej. Jeśli chcesz zwrócić jakieś wartości. Możesz użyć „powrotu”, jak w poniższym kodzie:
while(true){
if(some condition){
do something;
return;}
else{
do something;
return;}
}
w tym przypadku to while znajduje się w ramach metody, która zwraca pewne wartości.
Zapoznaj się z samouczkami Java ™ firmy Oracle.
Ale w zasadzie, jak powiedział Dacwe , użyj break
.
Jeśli możesz, często lepiej jest unikać używania break i umieszczać czek jako warunek pętli while lub używać czegoś takiego jak pętla do while. Nie zawsze jest to jednak możliwe.
jeśli piszesz while (prawda) . oznacza to, że pętla nie zatrzyma się w żadnej sytuacji, aby zatrzymać tę pętlę, musisz użyć instrukcji break pomiędzy blokiem while.
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;
}
}
}
Możesz użyć „break”, aby przerwać pętlę, co nie pozwoli pętli przetworzyć więcej warunków
Aby wyjść z pętli while, użyj Break;
To nie pozwoli pętli przetwarzać żadnych warunków, które są umieszczone wewnątrz pętli, upewnij się, że masz to wewnątrz pętli, ponieważ nie możesz umieścić go poza pętlą