Not – operátor (Visual Basic)

Provede logickou negaci Boolean výrazu nebo bitovou negaci číselného výrazu.

Syntax

result = Not expression  

Součásti

result
Povinná hodnota. Libovolný Boolean nebo numerický výraz.

expression
Povinná hodnota. Libovolný Boolean nebo numerický výraz.

Poznámky

BooleanV případě výrazů ukazuje následující tabulka, jak result je určena.

Pokud expression je Hodnota result je
True False
False True

U numerických výrazů Not operátor obrátí bitové hodnoty libovolného číselného výrazu a nastaví odpovídající bit v result závislosti na následující tabulce.

Pokud je bit v expression Bit v result je
1 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 bylo zajištěno přesné provedení.

Typy dat

Pro logickou negaci je datový typ výsledku Boolean . Pro bitovou negaci je výsledný datový typ stejný jako u expression . Nicméně pokud je výraz Decimal , je výsledkem Long .

Přetížení

NotOperátor může být přetížen, což znamená, že třída nebo struktura může předefinovat své chování, pokud má jeho operand typ této třídy nebo struktury. Pokud váš kód používá tento operátor na takové třídě nebo struktuře, ujistěte se, že rozumíte jeho předefinovanému chování. Další informace naleznete v tématu procedury operátorů.

Příklad 1

Následující příklad používá Not operátor k provedení logické negace Boolean výrazu. 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 a v False True 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 vzorci výsledků je nastaven na zpětný výsledek odpovídajícího bitu ve vzoru operandu, 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 v uvedeném pořadí.

Viz také