Partager via


Not, opérateur (Visual Basic)

Effectue une négation logique sur une expression Boolean ou une négation de bits sur une expression numérique.

result = Not expression

Éléments

  • result
    Obligatoire. Toute expression Boolean ou numérique.

  • expression
    Obligatoire. Toute expression Boolean ou numérique.

Notes

Pour les expressions Boolean, le tableau suivant illustre la manière dont l'argument result est déterminé :

Si expression a la valeur

La valeur de result est

True

False

False

True

Pour les expressions numériques, l'opérateur Not inverse les valeurs de bits de toute expression numérique et définit le bit correspondant dans result d'après le tableau suivant :

Si le bit dans expression a la valeur

Le bit dans result a la valeur

1

0

0

1

Notes

Compte tenu que les opérateurs logiques et de bits ont une priorité inférieure à celle des opérateurs arithmétiques et relationnels, toutes les opérations au niveau du bit doivent être mises entre parenthèses afin de garantir une exécution précise.

Types de données

Pour une négation Boolean, le type de données du résultat est Boolean. Pour une négation au niveau du bit, le type de données de résultat est le même que celui de expression. Toutefois, si l'expression est Decimal, le résultat est Long.

Surcharge

L'opérateur Not peut être surchargé, ce qui signifie qu'une classe ou structure peut redéfinir son comportement lorsque son opérande a le type de cette classe ou structure. Si votre code utilise cet opérateur sur une telle classe ou structure, assurez-vous que vous comprenez son comportement redéfini. Pour plus d'informations, consultez Procédures d'opérateur (Visual Basic).

Exemple

L'exemple suivant utilise l'opérateur Not pour effectuer une négation logique sur une expression Boolean. Le résultat est une valeur Boolean qui représente l'inverse de la valeur de l'expression.

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)

L'exemple précédent produit respectivement les résultats suivants : False et True.

L'exemple suivant utilise l'opérateur Not pour effectuer une négation logique sur les bits individuels d'une expression numérique. Le bit dans le modèle de résultat a la valeur de l'inverse du bit correspondant dans le modèle d'opérande, y compris le bit de signe.

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)

L'exemple précédent produit respectivement les résultats suivants : -11, -9, et -7.

Voir aussi

Référence

Opérateurs logiques/de bits (Visual Basic)

Priorité des opérateurs en Visual Basic

Opérateurs répertoriés par fonctionnalité (Visual Basic)

Concepts

Opérateurs de bits et opérateurs logiques en Visual Basic