Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Esegue la negazione logica su un'espressione Boolean o una negazione bit per bit su un'espressione numerica.
Sintassi
result = Not expression
Parti
result
Obbligatorio. Qualsiasi Boolean espressione numerica o .
expression
Obbligatorio. Qualsiasi Boolean espressione numerica o .
Osservazioni:
Per Boolean le espressioni, nella tabella seguente viene illustrato come result viene determinato.
Se expression è |
Il valore di result è |
|---|---|
True |
False |
False |
True |
Per le espressioni numeriche, l'operatore Not inverte i valori di bit di qualsiasi espressione numerica e imposta il bit corrispondente in in result base alla tabella seguente.
Se bit in expression è |
Il bit in result è |
|---|---|
| 1 | 0 |
| 0 | 1 |
Annotazioni
Poiché gli operatori logici e bit per bit hanno una precedenza inferiore rispetto ad altri operatori aritmetici e relazionali, tutte le operazioni bit per bit devono essere racchiuse tra parentesi per garantire un'esecuzione accurata.
Si noti che se Not someStr?.Contains("some string") o qualsiasi altro valore che restituisce il Boolean? valore di nothing o HasValue=false, il else blocco viene eseguito. La valutazione segue la valutazione SQL in cui null/nothing non è uguale a nulla, non anche un altro null/nothing.
Tipi di dati
Per una negazione booleana, il tipo di dati del risultato è Boolean. Per una negazione bit per bit, il tipo di dati dei risultati è uguale a quello di expression. Tuttavia, se expression è Decimal, il risultato è Long.
Sovraccarico
L'operatore Not può essere sottoposto a overload, il che significa che una classe o una struttura può ridefinirne il comportamento quando il relativo operando ha il tipo di tale classe o struttura. Se il codice usa questo operatore in una classe o una struttura di questo tipo, assicurarsi di comprenderne il comportamento ridefinito. Per altre informazioni, vedere Operator Procedures.
Esempio 1
Nell'esempio seguente viene usato l'operatore Not per eseguire la negazione logica in un'espressione Boolean . Il risultato è un Boolean valore che rappresenta il contrario del valore dell'espressione.
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)
L'esempio precedente produce rispettivamente i risultati di False e True.
Esempio 2
Nell'esempio seguente viene usato l'operatore Not per eseguire la negazione logica dei singoli bit di un'espressione numerica. Il bit nel criterio di risultato viene impostato sul contrario del bit corrispondente nel modello di operando, incluso il bit del segno.
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)
L'esempio precedente produce i risultati rispettivamente di –11, -9 e -7.