And 연산자(Visual Basic)
두 개의 Boolean
식에 대해 논리 결합을 수행하거나 두 개의 숫자 식에 대해 비트 단위 결합을 수행합니다.
구문
result = expression1 And expression2
부분
result
필수입니다. 임의의 Boolean
또는 숫자 식입니다. 부울 비교의 경우 result
는 두 Boolean
값의 논리적 결합입니다. 비트 연산의 경우 result
는 두 숫자 비트 패턴의 비트 결합을 나타내는 숫자 값입니다.
expression1
필수입니다. 임의의 Boolean
또는 숫자 식입니다.
expression2
필수입니다. 임의의 Boolean
또는 숫자 식입니다.
설명
부울 비교의 경우 expression1
과 expression2
가 모두 True
로 평가되는 경우에만 result
는 True
입니다. 다음 표에서는 result
가 결정되는 방법을 보여 줍니다.
expression1 |
expression2 |
result 값 |
---|---|---|
True |
True |
True |
True |
False |
False |
False |
True |
False |
False |
False |
False |
참고 항목
부울 비교에서 And
연산자는 항상 프로시저 호출을 포함할 수 있는 두 식을 모두 평가합니다. AndAlso 연산자는 단락(short-circuiting)을 수행합니다. 즉, expression1
이 False
인 경우 expression2
는 평가되지 않습니다.
숫자 값에 적용될 때 And
연산자는 두 숫자 식에서 동일하게 배치된 비트의 비트 비교를 수행하고 다음 표에 따라 result
에 해당 비트를 설정합니다.
expression1 의 비트가 다음과 같은 경우 |
그리고 expression2 의 비트는 다음과 같습니다. |
result 의 비트는 다음과 같습니다. |
---|---|---|
1 | 1 | 1 |
1 | 0 | 0 |
0 | 1 | 0 |
0 | 0 | 0 |
참고 항목
논리 및 비트 연산자는 다른 산술 및 관계 연산자보다 우선 순위가 낮으므로 정확한 결과를 얻으려면 모든 비트 연산을 괄호로 묶어야 합니다.
데이터 형식
피연산자가 하나의 Boolean
식과 하나의 숫자 식으로 구성된 경우 Visual Basic은 Boolean
식을 숫자 값(True
의 경우 -1, False
의 경우 0)으로 변환하고 비트 연산을 수행합니다.
부울 비교의 경우 결과의 데이터 형식은 Boolean
입니다. 비트 비교의 경우 결과 데이터 형식은 expression1
및 expression2
의 데이터 형식에 적절한 숫자 형식입니다. 연산자 결과의 데이터 형식에서 "관계형 및 비트별 비교" 표를 참조하세요.
참고 항목
And
연산자는 오버로드될 수 있습니다. 즉, 피연산자가 해당 클래스 또는 구조체 형식을 가질 때 클래스 또는 구조체의 동작을 재정의할 수 있습니다. 코드에서 이러한 클래스나 구조에 대해 이 연산자를 사용하는 경우 재정의된 동작을 이해해야 합니다. 자세한 내용은 Operator Procedures을 참조하세요.
예 1
다음 예에서는 And
연산자를 사용하여 두 식에 대한 논리적 결합을 수행합니다. 결과는 두 식이 모두 True
인지 여부를 나타내는 Boolean
값입니다.
Dim a As Integer = 10
Dim b As Integer = 8
Dim c As Integer = 6
Dim firstCheck, secondCheck As Boolean
firstCheck = a > b And b > c
secondCheck = b > a And b > c
앞의 예에서는 각각 True
및 False
의 결과를 생성합니다.
예제 2
다음 예에서는 And
연산자를 사용하여 두 숫자 식의 개별 비트에 대해 논리적 결합을 수행합니다. 피연산자의 해당 비트가 모두 1로 설정된 경우 결과 패턴의 비트가 설정됩니다.
Dim a As Integer = 10
Dim b As Integer = 8
Dim c As Integer = 6
Dim firstPattern, secondPattern, thirdPattern As Integer
firstPattern = (a And b)
secondPattern = (a And c)
thirdPattern = (b And c)
앞의 예에서는 각각 8, 2, 0의 결과를 생성합니다.
참고 항목
.NET