"일꾼이 일을 잘하려면 먼저 도구를 갈고 닦아야 한다." - 공자, 『논어』.
첫 장 > 프로그램 작성 > Java의 단락이란 무엇이며 어떻게 작동합니까?

Java의 단락이란 무엇이며 어떻게 작동합니까?

2024년 11월 12일에 게시됨
검색:309

What is Short-Circuiting in Java and How Does It Work?

Java의 단락: 설명 및 예

프로그래밍에서 단락은 표현식 평가가 조기에 종료되는 중요한 기능입니다. 그 결과가 명백할 때. 이 동작은 Java에서 ||와 같은 연산자가 포함된 표현식에서 중요한 의미를 갖습니다. (논리적 OR) 및 &&(논리적 AND)는 이 속성을 나타냅니다.

|| 표현식에서 첫 번째 피연산자가 true로 평가되면 나머지 피연산자는 처리되지 않습니다. 마찬가지로 && 표현식에서 첫 번째 피연산자가 false로 평가되면 나머지 피연산자는 무시됩니다.

예를 들어 다음을 고려하세요.

if (a == b || c == d || e == f) {
    // ...
}

a == b가 true를 반환하면 전체 표현식이 이미 true 결과를 산출했기 때문에 c == d 및 e == f에 대한 후속 평가를 건너뜁니다.

관련성 부작용을 다룰 때 단락이 분명해집니다. 표현식에서:

if (foo() || bar() || baz()) {
    // ...
}

foo()가 true를 반환하면 bar()나 baz()가 모두 실행되지 않아 발생할 수 있는 잠재적인 부작용을 예방할 수 있습니다.

단락의 또 다른 유용한 응용 프로그램은 처리에 있습니다. 객체 참조:

if (a != null && a.getFoo() != 42) {
    // ...
}

단락 없이 a가 null인 경우 a.getFoo()는 NullPointerException을 발생시킵니다. 그러나 != null은 먼저 true로 평가되어야 하므로 a가 null인 경우 예외가 방지되어 안전성이 보장됩니다.

모든 연산자가 단락을 지원하는 것은 아니라는 점에 유의하는 것이 중요합니다. | (비트 OR) 및 & (비트 AND) 연산자와 대부분의 다른 수학 연산자는 이러한 동작을 나타내지 않습니다. 따라서 ||를 사용하세요. 단락 효과를 찾을 때는 주의 깊게 &&하십시오.

최신 튜토리얼 더>

부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.

Copyright© 2022 湘ICP备2022001581号-3