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í.