[java] Java에서 while 루프를 어떻게 종료합니까?

Java에서 while 루프를 종료 / 종료하는 가장 좋은 방법은 무엇입니까?

예를 들어, 내 코드는 현재 다음과 같습니다.

while(true){
    if(obj == null){

        // I need to exit here

    }
}



답변

사용 break:

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

그러나 코드 가 지정한 것과 똑같은 경우 일반 while루프를 사용하고 조건을 obj != null다음 과 같이 변경할 수 있습니다 .

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


답변

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


답변

break 당신이 찾고있는 것입니다 :

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

또는 루프를 재구성하십시오.

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

또는:

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


답변

내 코드에서 while...do구문을 찾으면 while(true)눈이 피를 흘릴 것입니다. while대신 표준 루프를 사용하십시오 .

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

그리고 Yacoby가 그의 답변 에서 제공 한 링크를 살펴보십시오 . 진지하게.

while 및 do-while 문


답변

논리 검사와 동일한 규칙을 사용하여 while () 검사 내에서 여러 조건 논리 테스트를 수행 할 수 있습니다.

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

작동합니다.

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

유효합니다. 조건문은 루프를 통해 반복 될 때마다 확인됩니다. 일치하지 않으면 while () 루프가 종료됩니다. break를 사용할 수도 있습니다.

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


답변

위의 답변에서 이미 언급 한 “break”를 사용할 수 있습니다. 일부 값을 반환해야하는 경우. 아래 코드와 같이 “return”을 사용할 수 있습니다.

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

이 경우, 이것은 어떤 종류의 값을 반환하는 메서드 아래에 있습니다.


답변

Oracle 의 Java ™ 자습서 를 살펴보십시오 .

그러나 기본적으로 dacwe 말했다 사용 break.

가능하다면 break 사용을 피하고 while 루프의 조건으로 체크를 넣거나 do while 루프와 같은 것을 사용하는 것이 더 분명합니다. 그래도 항상 가능한 것은 아닙니다.