Sdílet prostřednictvím


Not – operátor (Visual Basic)

Provádí logickou negaci u výrazu Boolean nebo bitové negace u číselného výrazu.

Syntaxe

result = Not expression  

Součástky

result
Povinný: Libovolný Boolean nebo číselný výraz

expression
Povinný: Libovolný Boolean nebo číselný výraz

Poznámky

U Boolean výrazů znázorňuje následující tabulka způsob result určení.

Pokud expression je Hodnota result je
True False
False True

U číselných výrazů Not operátor invertuje bitové hodnoty libovolného číselného výrazu a nastaví odpovídající bit podle result následující tabulky.

Pokud je bit v expression Bit in result je
0 0
0 1

Poznámka:

Vzhledem k tomu, že logické a bitové operátory mají nižší prioritu než jiné aritmetické a relační operátory, měly by být všechny bitové operace uzavřeny v závorkách, aby se zajistilo přesné provedení.

Všimněte si, že pokud Not someStr?.Contains("some string") nebo jakákoli jiná hodnota, která se vyhodnotí jako Boolean? hodnota nothing nebo HasValue=false, else je blok spuštěn. Vyhodnocení se řídí vyhodnocením SQL, kdy hodnota null/nothing se nic nerovná, ani jiná hodnota null/nic.

Typy dat

Pro logickou negaci je Booleandatový typ výsledku . U bitové negace je datový typ výsledku stejný jako datový expressiontyp . Pokud je Decimalvšak výraz , výsledek je Long.

Přetížení

Operátor Not může být přetížen, což znamená, že třída nebo struktura mohou předefinovat jeho chování, pokud má jeho operand typ této třídy nebo struktury. Pokud váš kód používá tento operátor pro takovou třídu nebo strukturu, ujistěte se, že rozumíte jeho předdefinované chování. Další informace naleznete v tématu Procedury operátoru.

Příklad 1

Následující příklad používá Not operátor k provedení logické negace u výrazu Boolean . Výsledkem je Boolean hodnota, která představuje obrácenou hodnotu výrazu.

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)

Předchozí příklad vytvoří výsledky False a Truev uvedeném pořadí.

Příklad 2

Následující příklad používá Not operátor k provedení logické negace jednotlivých bitů číselného výrazu. Bit ve výsledném vzoru je nastaven na opak odpovídajícího bitu v operandovém vzoru, včetně bitu znaménka.

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)

Předchozí příklad vytvoří výsledky –11, –9 a –7.

Viz také