Hoe verlaat ik een while-lus in Java?

Wat is de beste manier om een while-lus in Java te beëindigen/beëindigen?

Mijn code is bijvoorbeeld momenteel als volgt:

while(true){
    if(obj == null){
        // I need to exit here
    }
}

Antwoord 1, autoriteit 100%

Gebruik break:

while (true) {
    ....
    if (obj == null) {
        break;
    }
    ....
}

Als je code er echter preciesuitziet zoals je hebt opgegeven, kun je een normale while-lus gebruiken en de voorwaarde wijzigen in obj != null:

while (obj != null) {
    ....
}

Antwoord 2, autoriteit 4%

while(obj != null){
  // statements.
}

Antwoord 3, autoriteit 4%

breakis wat je zoekt:

while (true) {
    if (obj == null) break;
}

anders kun je je loop herstructureren:

while (obj != null) {
    // do stuff
}

of:

do {
    // do stuff
} while (obj != null);

Antwoord 4, autoriteit 2%

Het vinden van een while...doconstructie met while(true)in mijn code zou mijn ogen doen bloeden. Gebruik in plaats daarvan een standaard while-lus:

while (obj != null){
    ...
}

En bekijk de link die Yacoby heeft gegeven in zijn antwoord, en deze ook. Ernstig.

De while- en do-while-verklaringen


Antwoord 5, autoriteit 2%

Je kunt meerdere logische conditietests doen binnen de while()-controle met dezelfde regels als bij elke logische controle.

while ( obj != null ) {  
    // do stuff  
}

werkt, net als

while ( value > 5 && value < 10 ) {  
    // do stuff  
}  

zijn geldig. De conditionals worden gecontroleerd bij elke iteratie door de lus. Zodra er een niet overeenkomt, wordt de while()-lus verlaten. Je kunt ook pauze gebruiken;

while ( value > 5 ) {  
    if ( value > 10 ) { break; }  
    ...  
}  

Antwoord 6

U kunt “break” gebruiken, al genoemd in de bovenstaande antwoorden. Als u enkele waarden moet retourneren. U kunt “return” gebruiken zoals de onderstaande code:

while(true){
       if(some condition){
            do something;
            return;}
        else{
            do something;
            return;}
            }

in dit geval bevindt deze while zich onder een methode die een soort van waarden retourneert.


Antwoord 7

Bekijk de Java™-zelfstudiesvan Orakel.

Maar zoals dacwe zei, gebruik break.

Als je kunt, is het vaak duidelijker om geen break te gebruiken en een vinkje te zetten als voorwaarde voor de while-lus, of iets als een do while-lus te gebruiken. Dit is echter niet altijd mogelijk.


Antwoord 8

als je while(true)schrijft. het betekent dat de lus in geen enkele situatie stopt. Voor het stoppen van deze lus moet u een break-statement gebruiken tussen while-blok.

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;
        }
    }
}

Antwoord 9

U kunt “break” gebruiken om de lus te verbreken, waardoor de lus niet meer voorwaarden kan verwerken


Antwoord 10

Om een while-lus te verlaten, gebruik Break;Hierdoor kan de lus geen voorwaarden verwerken die erin zijn geplaatst. Zorg ervoor dat dit binnen de lus staat, aangezien u het niet buiten de lus kunt plaatsen lus

Other episodes