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 una congiunzione logica su due Boolean espressioni o una congiunzione bit per bit su due espressioni numeriche.
Sintassi
result = expression1 And expression2
Parti
result
Obbligatorio. Qualsiasi Boolean espressione numerica o . Per il confronto booleano, result è la congiunzione logica di due Boolean valori. Per le operazioni bit per bit, result è un valore numerico che rappresenta la congiunzione bit per bit bit bit di due modelli numerici.
expression1
Obbligatorio. Qualsiasi Boolean espressione numerica o .
expression2
Obbligatorio. Qualsiasi Boolean espressione numerica o .
Osservazioni:
Per il confronto booleano, result è True se e solo se expression1 entrambi e expression2 restituiscono True. Nella tabella seguente viene illustrato come result viene determinato.
Se expression1 è |
Ed expression2 è |
Il valore di result è |
|---|---|---|
True |
True |
True |
True |
False |
False |
False |
True |
False |
False |
False |
False |
Annotazioni
In un confronto booleano, l'operatore valuta sempre entrambe le espressioni, che possono includere l'esecuzione And di chiamate di routine.
L'operatore AndAlso esegue il corto circuito, il che significa che se expression1 è False, expression2 non viene valutato.
Se applicato ai valori numerici, l'operatore And esegue un confronto bit per bit dei bit posizionati in modo identico in due espressioni numeriche e imposta il bit corrispondente in in result base alla tabella seguente.
Se bit in expression1 è |
E bit in expression2 è |
Il bit in result è |
|---|---|---|
| 1 | 1 | 1 |
| 1 | 0 | 0 |
| 0 | 1 | 0 |
| 0 | 0 | 0 |
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 risultati accurati.
Tipi di dati
Se gli operandi sono costituiti da un'espressione Boolean e da un'espressione numerica, Visual Basic converte l'espressione Boolean in un valore numerico (-1 per True e 0 per False) ed esegue un'operazione bit per bit.
Per un confronto booleano, il tipo di dati del risultato è Boolean. Per un confronto bit per bit, il tipo di dati dei risultati è un tipo numerico appropriato per i tipi di dati di expression1 e expression2. Vedere la tabella "Confronti relazionali e bit per bit" nei tipi di dati dei risultati dell'operatore.
Annotazioni
L'operatore And può essere sottoposto a overload, il che significa che una classe o una struttura può ridefinirne il comportamento quando un 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 And per eseguire una congiunzione logica su due espressioni. Il risultato è un Boolean valore che indica se entrambe le espressioni sono True.
Dim a As Integer = 10
Dim b As Integer = 8
Dim c As Integer = 6
Dim firstCheck, secondCheck As Boolean
firstCheck = a > b And b > c
secondCheck = b > a And b > c
L'esempio precedente produce rispettivamente i risultati di True e False.
Esempio 2
Nell'esempio seguente viene usato l'operatore And per eseguire una congiunzione logica sui singoli bit di due espressioni numeriche. Il bit nel criterio di risultato viene impostato se i bit corrispondenti negli operandi sono entrambi impostati su 1.
Dim a As Integer = 10
Dim b As Integer = 8
Dim c As Integer = 6
Dim firstPattern, secondPattern, thirdPattern As Integer
firstPattern = (a And b)
secondPattern = (a And c)
thirdPattern = (b And c)
L'esempio precedente produce rispettivamente i risultati di 8, 2 e 0.