부울 식(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
로 평가됩니다.
단락 연산자
논리 연산자 AndAlso
및 OrElse
는 단락으로 알려진 동작을 나타냅니다. 단락 연산자는 먼저 왼쪽 피연산자를 평가합니다. 왼쪽 피연산자가 전체 식의 값을 결정하면 오른쪽 식을 평가하지 않고 프로그램 실행이 진행됩니다. 다음 예제에서는 이것을 보여 줍니다.
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
로 평가되면 왼쪽 식이 이미 전체 식의 유효성을 검사했으므로 오른쪽 식을 평가하지 않고 다음 코드 줄로 실행이 진행됩니다.
비 단락 연산자 비교
반대로 논리 연산자 And
와 Or
를 사용하면 논리 연산자의 양쪽이 모두 평가됩니다. 다음 예제에서는 이것을 보여 줍니다.
If 45 < 12 And testFunction(3) = 81 Then
' Add code to continue execution.
End If
앞의 예에서는 왼쪽 식이 False
로 평가되지만 testFunction()
을 호출합니다.
괄호 식
괄호를 사용하여 부울 식의 평가 순서를 제어할 수 있습니다. 괄호로 묶인 식이 먼저 평가됩니다. 여러 수준의 중첩이 있는 경우 가장 깊게 중첩된 식에 우선순위가 부여됩니다. 괄호 안에서는 연산자 우선순위 규칙에 따라 평가가 진행됩니다. 자세한 내용은 Visual Basic의 연산자 우선순위를 참조하세요.
참고 항목
.NET