Freigeben über


Not-Operator (Visual Basic)

Führt eine logische Negation eines Boolean Ausdrucks oder eine bitweise Negation eines numerischen Ausdrucks aus.

Syntax

result = Not expression  

Bestandteile

result
Erforderlich. Ein beliebiger Boolean-Ausdruck oder numerischer Ausdruck.

expression
Erforderlich. Ein beliebiger Boolean-Ausdruck oder numerischer Ausdruck.

Bemerkungen

Die folgende Tabelle veranschaulicht für Boolean Ausdrücke, wie result bestimmt wird.

Wenn expression gleich Der Wert von result ist
True False
False True

Bei numerischen Ausdrücken invertiert der Not-Operator die Bitwerte eines beliebigen numerischen Ausdrucks und legt das entsprechende Bit in 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 Rangfolge haben als andere arithmetische und relationale Operatoren, sollten die bitweisen Vorgänge in Klammern eingeschlossen werden, um eine genaue Ausführung sicherzustellen.

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

Datentypen

Bei einer booleschen Negation ist der Datentyp des Ergebnisses Boolean. Bei einer bitweisen Negation ist der Ergebnisdatentyp mit dem von expression identisch. Wenn der Ausdruck jedoch Decimal ist, ist das Ergebnis Long.

Überladen

Der Not-Operator kann überladen werden. Dies bedeutet, dass eine Klasse oder Struktur ihr Verhalten neu definieren kann, wenn der zugehörige 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 Operator Procedures.

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 Umkehr des Ausdruckswerts 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 vorherigen Beispiel werden Ergebnisse von False bzw. True erzeugt.

Beispiel 2

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

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