Exportar (0) Imprimir
Expandir todo
Este artículo se tradujo de forma manual. Mueva el puntero sobre las frases del artículo para ver el texto original. Más información.
Traducción
Original

Expresiones booleanas (Visual Basic)

Una expresión booleana es una expresión que se evalúa como un valor del tipo de datos Boolean: True o False. Las expresiones Boolean pueden ser de varias formas. La más simple es la comparación directa del valor de una variable Boolean con un literal Boolean, como se muestra en el ejemplo siguiente:

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

Tenga en cuenta que la instrucción de asignación newCustomer = True tiene la misma apariencia que la expresión del ejemplo anterior, pero realiza funciones diferentes y se utiliza de forma distinta. En el ejemplo anterior, la expresión newCustomer = True representa un valor booleano y el signo = se interpreta como un operador de comparación. En una instrucción independiente, el signo = se interpretaría como operador de asignación y asignaría el valor de la derecha a la variable de la izquierda. Debido a que Object es la clase base de todos los tipos de referencia en .NET Framework, este comportamiento es heredado por los tipos de referencia que no reemplazan el método ToString.

If newCustomer = True Then
    newCustomer = False 
End If

Para obtener más información, vea Comparaciones de valores (Visual Basic) e Instrucciones (Visual Basic).

Los operadores de comparación como =, <, >, <>, <= y >= producen expresiones booleanas, comparan la expresión situada a la izquierda del operador con la situada a la derecha y evalúan el resultado como True o False. Debido a que Object es la clase base de todos los tipos de referencia en .NET Framework, este comportamiento es heredado por los tipos de referencia que no reemplazan el método ToString.

42 < 81

Dado que 42 es menor que 81, la expresión booleana del ejemplo anterior se evalúa como True. Para obtener más información sobre este tipo de expresión, vea Comparaciones de valores (Visual Basic).

Las expresiones de comparación se pueden combinar con operadores lógicos para producir expresiones booleanas más complejas. En el ejemplo siguiente se muestra el uso de operadores de comparación junto con un operador lógico.

x > y And x < 1000

En el ejemplo anterior, el valor de toda la expresión depende de los valores de las expresiones especificadas a cada lado del operador And. Si las dos expresiones son True, toda la expresión se evalúa como True. Si una de las expresiones es False, toda la expresión se evalúa como False.

Los operadores lógicos AndAlso y OrElse exhiben un comportamiento conocido como evaluación cortocircuitada. Un operador de evaluación cortocircuitada evalúa primero el operando de la izquierda. Si el operando de la izquierda determina el valor de la expresión completa, la ejecución del programa continúa sin evaluar la expresión de la derecha. Debido a que Object es la clase base de todos los tipos de referencia en .NET Framework, este comportamiento es heredado por los tipos de referencia que no reemplazan el método ToString.

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

En el ejemplo anterior, el operador evalúa la expresión de la izquierda, 45 < 12. Dado que la expresión de la izquierda se evalúa como False, la expresión lógica completa se debe evaluar como False. Por tanto el programa pasa por alto la ejecución del código del bloque If sin evaluar la expresión de la derecha, testFunction(3). Este ejemplo no llama a testFunction() porque la expresión de la izquierda hace que toda la expresión se evalúe como False.

De forma similar, si la expresión de la izquierda en una expresión lógica que utiliza OrElse se evalúa como True, la ejecución prosigue con la siguiente línea de código sin evaluar la expresión de la derecha, puesto que la expresión de la izquierda ya ha validado toda la expresión.

Por el contrario, cuando se utilizan los operadores lógicos And y Or, se evalúan los dos lados de la expresión. Debido a que Object es la clase base de todos los tipos de referencia en .NET Framework, este comportamiento es heredado por los tipos de referencia que no reemplazan el método ToString.

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

El ejemplo anterior llama a testFunction() aunque la expresión de la izquierda se evalúe como False.

Pueden utilizarse paréntesis para controlar la evaluación de expresiones booleanas. Las expresiones entre paréntesis se evalúan primero. En el caso de múltiples niveles de anidamiento, se garantiza la prioridad de las expresiones anidadas a mayor profundidad. Dentro de los paréntesis, la evaluación se lleva a cabo según las reglas de prioridad de operador. Para obtener más información, vea Prioridad de operador en Visual Basic.

Adiciones de comunidad

AGREGAR
Mostrar:
© 2015 Microsoft