Compartilhar via


Operador E (Visual Basic)

Executa uma conjunção lógica em duas Boolean expressões ou uma conjunção bit a bit em duas expressões numéricas.

Sintaxe

result = expression1 And expression2  

Partes

result
Obrigatório Qualquer Boolean expressão numérica ou qualquer. Para comparação booliana, result é a conjunção lógica de dois Boolean valores. Para operações bit a bit, result é um valor numérico que representa a conjunção bit a bit de dois padrões de bit numérico.

expression1
Obrigatório Qualquer Boolean expressão numérica ou qualquer.

expression2
Obrigatório Qualquer Boolean expressão numérica ou qualquer.

Observações

Para comparação booliana, result é True se e somente se ambos expression1 e expression2 avaliado como True. A tabela a seguir ilustra como result é determinado.

Se expression1 for E expression2 é O valor de result é
True True True
True False False
False True False
False False False

Observação

Em uma comparação booliana, o And operador sempre avalia ambas as expressões, o que pode incluir a realização de chamadas de procedimento. O Operador AndAlso executa um curto-circuito, o que significa que, se expression1 for False, expression2 não será avaliado.

Quando aplicado a valores numéricos, o And operador executa uma comparação bit a bit de bits posicionados de forma idêntica em duas expressões numéricas e define o bit correspondente de result acordo com a tabela a seguir.

Se o bit dentro expression1 for E bit in expression2 é O bit dentro result é
1 1 1
1 0 0
0 1 0
0 0 0

Observação

Como os operadores lógicos e bit a bit têm uma precedência menor do que outros operadores aritméticos e relacionais, todas as operações bit a bit devem ser colocadas entre parênteses para garantir resultados precisos.

Tipos de dados

Se os operandos consistirem em uma Boolean expressão e uma expressão numérica, o Visual Basic converterá a Boolean expressão em um valor numérico (–1 para True e 0 para False) e executará uma operação bit a bit.

Para uma comparação booliana, o tipo de dados do resultado é Boolean. Para uma comparação bit a bit, o tipo de dados de resultado é um tipo numérico apropriado para os tipos de dados de expression1 e expression2. Consulte a tabela "Comparações relacionais e bit a bit" nos tipos de dados de resultados do operador.

Observação

O And operador pode ser sobrecarregado, o que significa que uma classe ou estrutura pode redefinir seu comportamento quando um operando tem o tipo dessa classe ou estrutura. Se o código usar esse operador em tal classe ou estrutura, certifique-se de entender seu comportamento redefinido. Para obter mais informações, consulte Procedimentos de Operador.

Exemplo 1

O exemplo a seguir usa o And operador para executar uma conjunção lógica em duas expressões. O resultado é um Boolean valor que representa se ambas as expressões são True.

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

O exemplo anterior produz resultados de True e False, respectivamente.

Exemplo 2

O exemplo a seguir usa o And operador para executar a conjunção lógica nos bits individuais de duas expressões numéricas. O bit no padrão de resultado será definido se os bits correspondentes nos operandos estiverem definidos como 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)

O exemplo anterior produz resultados de 8, 2 e 0, respectivamente.

Consulte também