부울 식(Visual Basic)

부울 식부울 데이터 형식의 값(True 또는 False)으로 평가되는 식입니다. Boolean 식은 여러 가지 양식을 사용할 수 있습니다. 가장 간단한 방법은 다음 예제에 나온 대로 Boolean 변수 값을 Boolean 리터럴과 직접 비교하는 것입니다.

If newCustomer = True Then
    ' Insert code to execute if newCustomer = True.
Else
    ' Insert code to execute if newCustomer = False.
End If

= 연산자의 두 가지 의미

대입문 newCustomer = True는 이전 예제의 식과 동일해 보이지만 다른 기능을 수행하고 다르게 사용됩니다. 이전 예제에서 newCustomer = True 식은 부울 값을 나타내고 = 기호는 비교 연산자로 해석됩니다. 독립 실행형 문에서 = 기호는 대입 연산자로 해석되어 오른쪽의 값을 왼쪽의 변수에 할당합니다. 다음 예제에서는 이것을 보여 줍니다.

If newCustomer = True Then
    newCustomer = False
End If

자세한 내용은 값 비교을 참조하세요.

비교 연산자

=, <, >, <>, <=, >= 등의 비교 연산자는 연산자 왼쪽의 식과 오른쪽의 식을 비교하고 결과를 True 또는 False로 평가하는 부울 식을 만들 수 있습니다. 다음 예제에서는 이것을 보여 줍니다.

42 < 81

42는 81보다 작으므로 이전 예제에서 부울 식은 True로 평가됩니다. 이러한 종류의 식에 대한 자세한 내용은 값 비교를 참조하세요.

논리 연산자와 결합된 비교 연산자

논리 연산자를 사용하여 비교 식을 결합하여 더 복잡한 부울 식을 만들 수 있습니다. 다음 예제에서는 논리 연산자와 함께 비교 연산자를 사용하는 방법을 보여 줍니다.

x > y And x < 1000

이전 예제에서 전체 식의 값은 And 연산자의 양쪽에 있는 식의 값에 따라 달라집니다. 두 식이 모두 True이면 전체 식은 True로 평가됩니다. 두 식 중 하나가 False이면 전체 식이 False로 평가됩니다.

단락 연산자

논리 연산자 AndAlsoOrElse단락으로 알려진 동작을 나타냅니다. 단락 연산자는 먼저 왼쪽 피연산자를 평가합니다. 왼쪽 피연산자가 전체 식의 값을 결정하면 오른쪽 식을 평가하지 않고 프로그램 실행이 진행됩니다. 다음 예제에서는 이것을 보여 줍니다.

If 45 < 12 AndAlso testFunction(3) = 81 Then
    ' Add code to continue execution.
End If

이전 예제에서 연산자는 왼쪽 식(45 < 12)을 평가합니다. 왼쪽 식은 False로 평가되므로 전체 논리 식이 False로 평가되어야 합니다. 따라서 프로그램 실행은 오른쪽 식(testFunction(3))을 평가하지 않고 If 블록 내의 코드 실행을 건너뜁니다. 예제에서는 왼쪽 식이 전체 식을 위조하기 때문에 testFunction()을 호출하지 않습니다.

마찬가지로 OrElse을 사용하는 논리 식에서 왼쪽 식이 True로 평가되면 왼쪽 식이 이미 전체 식의 유효성을 검사했으므로 오른쪽 식을 평가하지 않고 다음 코드 줄로 실행이 진행됩니다.

비 단락 연산자 비교

반대로 논리 연산자 AndOr를 사용하면 논리 연산자의 양쪽이 모두 평가됩니다. 다음 예제에서는 이것을 보여 줍니다.

If 45 < 12 And testFunction(3) = 81 Then
    ' Add code to continue execution.
End If

앞의 예에서는 왼쪽 식이 False로 평가되지만 testFunction()을 호출합니다.

괄호 식

괄호를 사용하여 부울 식의 평가 순서를 제어할 수 있습니다. 괄호로 묶인 식이 먼저 평가됩니다. 여러 수준의 중첩이 있는 경우 가장 깊게 중첩된 식에 우선순위가 부여됩니다. 괄호 안에서는 연산자 우선순위 규칙에 따라 평가가 진행됩니다. 자세한 내용은 Visual Basic의 연산자 우선순위를 참조하세요.

참고 항목