Freigeben über


Not-Operator (Visual Basic)

Führt eine logische Negation für einen Boolean Ausdruck oder eine bitweise Negation für einen numerischen Ausdruck aus.

Syntax

result = Not expression  

Bestandteile

result
Erforderlich. Beliebiger Boolean oder numerischer Ausdruck.

expression
Erforderlich. Beliebiger Boolean oder numerischer Ausdruck.

Bemerkungen

Für Boolean Ausdrücke veranschaulicht die folgende Tabelle, wie result bestimmt wird.

Wenn expression Der Wert von result ist
True False
False True

Bei numerischen Ausdrücken umkehrt der Not Operator die Bitwerte eines beliebigen numerischen Ausdrucks und legt das entsprechende Bit result gemäß der folgenden Tabelle fest.

Wenn Bit in expression ist Das Bit in result ist
1 0
0 1

Hinweis

Da die logischen und bitweisen Operatoren eine niedrigere Priorität haben als andere arithmetische und relationale Operatoren, sollten alle bitweisen Vorgänge in Klammern eingeschlossen werden, um eine genaue Ausführung sicherzustellen.

Beachten Sie, dass der Block ausgeführt wird, wenn Not someStr?.Contains("some string") oder ein anderer Wert, der ausgewertet Boolean? wird, den Wert nothing oder HasValue=falseden else Wert aufweist. Die Auswertung folgt der SQL-Auswertung, bei der null/nichts nichts gleicht, nicht einmal ein anderer Null/nichts.

Datentypen

Bei einer booleschen Negation lautet Booleander Datentyp des Ergebnisses . Bei einer bitweisen Negation ist der Ergebnisdatentyp identisch mit dem von expression. Wenn der Ausdruck jedoch lautet Decimal, lautet Longdas Ergebnis .

Überladen

Der Not Operator kann überladen werden, was bedeutet, dass eine Klasse oder Struktur ihr Verhalten neu definieren kann, wenn der Operand den Typ dieser Klasse oder Struktur aufweist. Wenn Ihr Code diesen Operator für eine solche Klasse oder Struktur verwendet, stellen Sie sicher, dass Sie das neu definierte Verhalten verstehen. Weitere Informationen finden Sie unter Operatorprozeduren.

Beispiel 1

Im folgenden Beispiel wird der Not Operator verwendet, um eine logische Negation für einen Boolean Ausdruck auszuführen. Das Ergebnis ist ein Boolean Wert, der die Umkehrung des Werts des Ausdrucks darstellt.

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)

Im vorangehenden Beispiel werden Ergebnisse der False bzw True. deren Ergebnisse erzeugt.

Beispiel 2

Im folgenden Beispiel wird der Not Operator verwendet, um die logische Negation der einzelnen Bits eines numerischen Ausdrucks auszuführen. Das Bit im Ergebnismuster wird auf die Umkehrung des entsprechenden Bits im Operandenmuster festgelegt, einschließlich des Zeichenbits.

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)

Im vorherigen Beispiel werden Ergebnisse von –11, –9 bzw. –7 erzeugt.

Siehe auch