Not (Operador, Visual Basic)

Realiza la negación lógica en una Boolean expresión o la negación bit a bit en una expresión numérica.

Sintaxis

result = Not expression  

Partes

result
Obligatorio. Cualquier expresión numérica o de tipo Boolean.

expression
Obligatorio. Cualquier expresión numérica o de tipo Boolean.

Comentarios

En Boolean el caso de las expresiones, en la tabla siguiente se muestra cómo se result determina.

Si expression es El valor de result es
True False
False True

Para las expresiones numéricas, el operador invierte los valores de bits de cualquier expresión numérica y establece el bit correspondiente en según Not result la tabla siguiente.

Si bit in expression es El bit de result es
1 0
0 1

Nota

Dado que los operadores lógicos y bit a bit tienen una prioridad menor que otros operadores aritméticos y relacionales, las operaciones bit a bit se deben incluir entre paréntesis para garantizar una ejecución precisa.

Tipo de datos

Para una negación booleana, el tipo de datos del resultado es Boolean . Para una negación bit a bit, el tipo de datos de resultado es el mismo que el de expression . Sin embargo, si expression es Decimal , el resultado es Long .

Sobrecarga

El Not operador se puede sobrecargar, lo que significa que una clase o estructura puede volver a definir su comportamiento cuando su operando tiene el tipo de esa clase o estructura. Si el código usa este operador en este tipo de clase o estructura, asegúrese de que comprende su comportamiento redefinido. Para obtener más información, consulta Operator Procedures.

Ejemplo 1

En el ejemplo siguiente se usa Not el operador para realizar la negación lógica en una Boolean expresión. El resultado es un Boolean valor que representa el inverso del valor de la expresión.

Dim a As Integer = 10
Dim b As Integer = 8
Dim c As Integer = 6
Dim firstCheck, secondCheck As Boolean
firstCheck = Not (a > b)
secondCheck = Not (b > a)

En el ejemplo anterior se generan los resultados False de y True , respectivamente.

Ejemplo 2

En el ejemplo siguiente se usa Not el operador para realizar la negación lógica de los bits individuales de una expresión numérica. El bit del patrón de resultados se establece en el inverso del bit correspondiente en el patrón de operando, incluido el bit de signo.

Dim a As Integer = 10
Dim b As Integer = 8
Dim c As Integer = 6
Dim firstPattern, secondPattern, thirdPattern As Integer
firstPattern = (Not a)
secondPattern = (Not b)
thirdPattern = (Not c)

En el ejemplo anterior se generan resultados de –11, –9 y –7, respectivamente.

Consulta también