Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Utför logisk negation på ett Boolean uttryck eller bitvis negation på ett numeriskt uttryck.
Syntax
result = Not expression
Delar
result
Obligatoriskt. Valfritt Boolean eller numeriskt uttryck.
expression
Obligatoriskt. Valfritt Boolean eller numeriskt uttryck.
Anmärkningar
För Boolean uttryck illustrerar följande tabell hur result bestäms.
Om expression är |
Värdet för result är |
|---|---|
True |
False |
False |
True |
För numeriska uttryck inverterade operatorn Not bitvärdena för ett numeriskt uttryck och anger motsvarande bit i result enligt följande tabell.
Om bit in expression är |
Biten i result är |
|---|---|
| 1 | 0 |
| 0 | 1 |
Anmärkning
Eftersom de logiska operatorerna och bitvis-operatorerna har lägre prioritet än andra aritmetiska operatorer och relationsoperatorer bör alla bitvis åtgärder omges av parenteser för att säkerställa korrekt körning.
Observera att om Not someStr?.Contains("some string") eller något annat värde som utvärderas som Boolean? har värdet nothing för eller HasValue=false, else körs blocket. Utvärderingen följer SQL-utvärderingen där null/ingenting inte är lika med något, inte ens en annan null/ingenting.
Datatyper
För en boolesk negation är Booleandatatypen för resultatet . För en bitvis negation är resultatdatatypen samma som expressionför . Men om uttrycket är Decimalär Longresultatet .
Överbelastning
Operatorn Not kan överbelastas, vilket innebär att en klass eller struktur kan omdefiniera sitt beteende när dess operande har den typen av klass eller struktur. Om din kod använder den här operatorn i en sådan klass eller struktur bör du se till att du förstår dess omdefinierade beteende. Mer information finns i Operatorprocedurer.
Exempel 1
I följande exempel används operatorn Not för att utföra logisk negation för ett Boolean uttryck. Resultatet är ett Boolean värde som representerar det omvända värdet för uttrycket.
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)
Föregående exempel ger resultat av False respektive True.
Exempel 2
I följande exempel används operatorn Not för att utföra logisk negation av enskilda bitar av ett numeriskt uttryck. Biten i resultatmönstret är inställd på motsatsen till motsvarande bit i operandmönstret, inklusive teckenbiten.
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)
Föregående exempel ger resultat på –11, –9 respektive –7.