소개
이 랩에서는 Java 에서 boolean 변수가 false인지 확인하는 방법을 배우게 됩니다. 조건에 따라 프로그램 흐름을 제어하는 데 필수적인 boolean 값으로 작업하는 기본적인 기술을 살펴보겠습니다.
실습 예제를 통해 false를 확인하기 위해 동등 연산자 (==) 를 사용하고, Boolean 객체로 테스트하며, true 및 false 조건 모두에 대한 검사를 결합하는 연습을 할 것입니다. 이 랩을 마치면 Java 프로그램에서 boolean 변수를 효과적으로 활용하는 방법에 대한 확실한 이해를 갖게 될 것입니다.
False 확인을 위한 동등 연산자 사용
이 단계에서는 Java 에서 동등 연산자 (==) 를 사용하여 boolean 변수가 false인지 확인하는 방법을 살펴보겠습니다. boolean 값으로 작업하는 방법을 이해하는 것은 프로그래밍의 기본이며, 조건에 따라 프로그램의 흐름을 제어하는 데 사용됩니다.
boolean 변수는 true 또는 false의 두 값 중 하나를 가질 수 있습니다. 이러한 값은 종종 비교 또는 논리 연산의 결과입니다.
false를 확인하는 것을 보여주는 간단한 Java 프로그램을 만들어 보겠습니다.
WebIDE 편집기에서
HelloJava.java파일을 엽니다 (아직 열려 있지 않은 경우).기존 코드를 다음으로 바꿉니다.
public class HelloJava { public static void main(String[] args) { boolean isComplete = false; if (isComplete == false) { System.out.println("The task is not complete."); } } }새로운 부분을 살펴보겠습니다.
boolean isComplete = false;: 이 줄은isComplete라는 boolean 변수를 선언하고 값을false로 초기화합니다.if (isComplete == false): 이것은if문이며, 특정 조건이 true 인 경우에만 코드 블록을 실행하는 데 사용됩니다. 여기의 조건은isComplete == false입니다.==연산자는isComplete의 값이false와 같은지 확인합니다.System.out.println("The task is not complete.");: 이 줄은isComplete == false조건이 true 인 경우에만 실행됩니다.
파일을 저장합니다 (Ctrl+S 또는 Cmd+S).
터미널에서
javac명령을 사용하여 프로그램을 컴파일합니다.javac HelloJava.java오류가 없으면 출력이 표시되지 않습니다.
java명령을 사용하여 컴파일된 프로그램을 실행합니다.java HelloJava다음 출력을 볼 수 있습니다.
The task is not complete.이 출력은
isComplete == false조건이 실제로 true 였고if블록 내부의 코드가 실행되었음을 확인합니다.
동등 연산자 (==) 를 사용하여 boolean 이 false인지 확인하는 것은 이 조건을 표현하는 간단한 방법입니다. 다음 단계에서는 false 값을 확인하는 또 다른 방법을 살펴보겠습니다.
Boolean 객체로 테스트
이전 단계에서는 기본 boolean 유형으로 작업했습니다. Java 에는 기본 boolean 유형에 대한 객체 래퍼인 Boolean이라는 해당 클래스도 있습니다. 기본 유형을 자주 사용하겠지만, 컬렉션이나 객체를 필요로 하는 메서드를 사용할 때 특히 Boolean 객체에 대해 아는 것이 유용합니다.
이 단계에서는 Boolean 객체를 사용할 때 false 값을 확인하는 방법을 살펴보겠습니다.
WebIDE 편집기에서
HelloJava.java파일을 엽니다.현재 코드를 다음으로 바꿉니다.
public class HelloJava { public static void main(String[] args) { Boolean isProcessed = Boolean.FALSE; if (isProcessed.equals(false)) { System.out.println("The item has not been processed."); } } }변경 사항을 살펴보겠습니다.
Boolean isProcessed = Boolean.FALSE;: 이 줄은isProcessed라는Boolean객체를 선언하고 boolean 값false를 나타내는 정적 상수Boolean.FALSE로 초기화합니다.if (isProcessed.equals(false)): Java 에서 객체로 작업할 때는==연산자 대신equals()메서드를 사용하여 값을 비교하는 것이 일반적으로 권장됩니다.Boolean클래스의equals()메서드는 객체의 boolean 값이 인수로 전달된 boolean 값과 같은지 확인합니다.
파일을 저장합니다 (Ctrl+S 또는 Cmd+S).
터미널에서
javac를 사용하여 프로그램을 컴파일합니다.javac HelloJava.java다시, 출력이 없으면 컴파일이 성공했음을 의미합니다.
java를 사용하여 프로그램을 실행합니다.java HelloJava다음 출력을 볼 수 있습니다.
The item has not been processed.이것은
equals()메서드가Boolean객체isProcessed가 boolean 값false를 가지고 있음을 올바르게 식별했음을 보여줍니다.
기본 boolean 과 함께 == false를 사용하는 것은 일반적이고 완벽하게 괜찮지만, .equals(false)를 사용하는 것은 Boolean 객체를 비교하는 표준 방법입니다. 기본 유형과 해당 객체 래퍼의 차이점을 이해하는 것은 Java 에서 중요한 개념입니다.
True 및 False 확인 결합
실제 프로그래밍에서는 여러 조건을 동시에 확인해야 하는 경우가 많습니다. 여기에는 && (AND) 및 || (OR) 과 같은 논리 연산자를 사용하여 true 및 false 값에 대한 확인을 결합하는 것이 포함됩니다.
이 단계에서는 true 및 false 조건 모두에 대한 확인을 포함하도록 프로그램을 수정합니다.
WebIDE 편집기에서
HelloJava.java파일을 엽니다.현재 코드를 다음으로 바꿉니다.
public class HelloJava { public static void main(String[] args) { boolean isTaskStarted = true; boolean isTaskFinished = false; if (isTaskStarted == true && isTaskFinished == false) { System.out.println("The task has started but is not finished."); } if (isTaskStarted == false || isTaskFinished == true) { System.out.println("The task is either not started or is already finished."); } } }새로운 코드를 분석해 보겠습니다.
boolean isTaskStarted = true;:isTaskStarted라는 boolean 변수를 선언하고true로 설정합니다.boolean isTaskFinished = false;: 다른 boolean 변수isTaskFinished를 선언하고false로 설정합니다.if (isTaskStarted == true && isTaskFinished == false): 이if문은 논리 AND 연산자 (&&) 를 사용합니다. 이 블록 내부의 코드는 두 조건이 모두 true 일 경우에만 실행됩니다:isTaskStarted가trueANDisTaskFinished가false입니다.if (isTaskStarted == false || isTaskFinished == true): 이if문은 논리 OR 연산자 (||) 를 사용합니다. 이 블록 내부의 코드는 최소한 하나의 조건이 true 일 경우에 실행됩니다:isTaskStarted가falseORisTaskFinished가true입니다.
파일을 저장합니다 (Ctrl+S 또는 Cmd+S).
터미널에서
javac를 사용하여 프로그램을 컴파일합니다.javac HelloJava.javajava를 사용하여 프로그램을 실행합니다.java HelloJavaisTaskStarted및isTaskFinished의 초기 값을 기반으로 다음 출력을 볼 수 있습니다.The task has started but is not finished.첫 번째
if조건 (true && false) 은false로 평가되므로 첫 번째println이 실행됩니다. 두 번째if조건 (true || false) 은true로 평가되므로 두 번째println이 실행됩니다.잠깐만요, 출력은 "The task has started but is not finished." 뿐인가요? 조건을 다시 평가해 보겠습니다.
isTaskStarted == true && isTaskFinished == false:true == true는true이고,false == false는true입니다.true && true는true입니다. 따라서 첫 번째 메시지가 출력됩니다.isTaskStarted == false || isTaskFinished == true:true == false는false이고,false == true는false입니다.false || false는false입니다. 따라서 두 번째 메시지는 출력되지 않습니다.
죄송합니다. 예상 출력은 실제로 첫 번째 줄뿐입니다. 이것은 논리 연산자가 조건들을 결합하는 방식을 보여줍니다.
isTaskStarted및isTaskFinished의 초기 값을 변경하고 프로그램을 다시 실행하여 출력이 어떻게 변경되는지 실험해 볼 수 있습니다.
논리 연산자를 사용하여 boolean 확인을 결합하는 것은 프로그램의 흐름을 제어하고 여러 요소를 기반으로 결정을 내리는 강력한 방법입니다.
요약
이 랩에서는 Java 에서 boolean 변수가 false인지 확인하는 방법을 배웠습니다. boolean 변수를 false 리터럴과 직접 비교하기 위해 동등 연산자 (==) 를 사용하는 것으로 시작했습니다. 이것은 false 조건을 확인하고 if 문을 사용하여 프로그램 흐름을 제어하는 기본적인 방법을 보여주었습니다. 그런 다음 이 개념을 간단한 Java 프로그램으로 테스트하여 boolean 변수가 실제로 false일 때 예상되는 출력을 관찰하기 위해 컴파일하고 실행했습니다.



