Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
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 ou expressão numérica. Para comparação booleana, result é a conjunção lógica de dois Boolean valores. Para operações bitwise, result é um valor numérico que representa a conjunção bitwise de dois padrões de bits numéricos.
expression1
Obrigatório Qualquer Boolean expressão ou expressão numérica.
expression2
Obrigatório Qualquer Boolean expressão ou expressão numérica.
Observações
Para comparação booleana, result é True se e somente se ambos expression1 e expression2 avaliar a 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 booleana, o operador sempre avalia ambas as expressões, o And que pode incluir fazer chamadas de procedimento. O operador AndAlso realiza curto-circuito, o que significa que se expression1 é False, então expression2 não é 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 bit in expression1 é |
E pouco a pouco expression2 é |
O bit in result é |
|---|---|---|
| 1 | 1 | 1 |
| 1 | 0 | 0 |
| 0 | 1 | 0 |
| 0 | 0 | 0 |
Observação
Uma vez que os operadores lógicos e bitwise têm uma precedência menor do que outros operadores aritméticos e relacionais, quaisquer operações bitwise 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 converte a Boolean expressão em um valor numérico (–1 para True e 0 para False) e executa uma operação bitwise.
Para uma comparação booleana, o tipo de dados do resultado é Boolean. Para uma comparação bit a bits, 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 bitwise" em Tipos de dados de resultados do operador.
Observação
O And operador pode estar 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 seu código usa esse operador em tal classe ou estrutura, certifique-se de entender seu comportamento redefinido. Para obter mais informações, consulte Procedimentos do 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 operador para executar a And conjunção lógica nos bits individuais de duas expressões numéricas. O bit no padrão de resultado é definido se os bits correspondentes nos operandos estiverem ambos 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.