Compartilhar via


Expressões booleanas (Visual Basic)

A expressãobooliano é uma expressão que avalia um valor igual a de dadosbooliano Tipo: True or False. Booleanexpressões podem tomar vários formulários. O mais simples é a comparação direta do valor de um Booleanavariável para um Boolean literal, como mostrado no exemplo a seguir.

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

Dois significados do operador =

Observe que a instrução de atribuiçãonewCustomer = True tem a mesma aparência como a expressão no exemplo anterior, mas ele executa uma função de diferentes e usado de forma diferente. No exemplo anterior, a expressão newCustomer = True representa um valor booliano e o = sinal é interpretado como um operadorde comparação. Um stand-sozinho demonstrativo, o = é interpretado como um operador de atribuição de sinal e atribui o valor à direita para a variável na esquerda. The following example illustrates this.

If newCustomer = True Then
    newCustomer = False
End If

Para obter mais informações, consulte Comparações de valor (Visual Basic) e Instruções (Visual Basic).

Comparison Operators

Os operadores de comparação como =, <, >, <>, <=, e >= produzir expressões booliano , comparando a expressão no lado esquerdo do operador para a expressão no lado direito do operador e avaliar o resultado como True ou False. The following example illustrates this.

42 < 81

Como 42 é menor que 81, a expressão booliano no exemplo anterior é avaliada como True. Para obter mais informações sobre esse tipo de expressão, consulte Comparações de valor (Visual Basic).

Operadores de comparação combinados com operadores lógicos

Expressões de comparação podem ser combinadas usando operadores lógicos para produzir mais complexas expressões booliano . O exemplo a seguir demonstra o uso de operadores de comparação em conjunto com um operadorde lógica.

x > y And x < 1000

No exemplo anterior, o valor da expressão geral depende dos valores das expressões de cada lado da Anddeoperador. Se as duas expressões são True, em seguida, avalia a expressão geral True. Se qualquer expressão for False, em seguida, toda a expressão for avaliada como False.

Curto-Circuiting operadores

Os operadores lógicos AndAlso e OrElse Exibir um comportamento conhecido como curto-circuiting. Uma breve-circuiting o operador primeiro avalia o operando esquerdo. Se o operando esquerdo determina o valor de toda a expressão, a execução do programa prossegue sem avaliar a expressão à direita. The following example illustrates this.

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

No exemplo anterior, o operador avalia a expressão à esquerda, 45 < 12. Porque a expressão à esquerda é avaliada como False, toda a expressão lógica deve ser avaliada como False. A execução do programa, portanto, ignora a execução do código dentro do If bloco sem avaliar a expressão à direita, testFunction(3). Este exemplo não chama testFunction() porque a expressão esquerda falsifica a expressão inteira.

Da mesma forma, se a expressão à esquerda em uma expressão lógica usando OrElse for avaliada como True, a execução passa para a próxima linha de código sem avaliar a expressão à direita, porque a expressão esquerda já validou a expressão inteira.

Comparação com operadores de Circuiting curto-sem-

Por outro lado, os dois lados do operador lógico são avaliados quando os operadores lógicos And e Or são usados. The following example illustrates this.

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

As chamadas de exemplo anterior testFunction() , mesmo que avalia a expressão à esquerda False.

Expressões entre parênteses

Você pode usar parênteses para controlar a ordem de avaliação de expressões booliano . Expressões entre parênteses, avaliam primeiro. Vários níveis de aninhamento, precedência é concedida para as expressões mais profundamente aninhadas. Entre parênteses, avaliação continuará de acordo com as regras de precedência do operador . For more information, see Precedência de operadores no Visual Basic.

Consulte também

Referência

Operadores de comparação (Visual Basic)

Precedência de operadores no Visual Basic

Tipo de dados booleanos (Visual Basic)

Conceitos

Operadores lógicos e bit a bit no Visual Basic

Comparações de valor (Visual Basic)

Combinação eficiente de operadores (Visual Basic)

Outros recursos

Instruções no Visual Basic