AndAlso — Operator (Visual Basic)

Wykonuje zwieranie połączeniu logiczną dwóch wyrażeń.

result = expression1 AndAlso expression2

Części

Termin

Definicja

result

Wymagane.Każdy Boolean wyrażenie.Wynik jest Boolean wynik porównania dwóch wyrażeń.

expression1

Wymagane.Każdy Boolean wyrażenie.

expression2

Wymagane.Każdy Boolean wyrażenie.

Uwagi

Operacja logiczna jest nazywany zwieranie Jeśli skompilowanego kodu można pominąć oceny jedno wyrażenie w zależności od wyniku innego wyrażenia.Jeśli wynik pierwszego wyrażenia oceniane Określa końcowy wynik operacji, istnieje potrzeba drugiego wyrażenia, ponieważ nie można zmienić, wynik końcowy.Zwieranie można zwiększyć wydajność , wyrażenie pomijana jest złożone lub pociąga za sobą wywołania procedura .

Jeśli oba wyrażenia do True, result jest True.W następującej tabeli pokazano, jak result jest ustalona.

If expression1 is

And expression2 is

Wartość result jest

True

True

True

True

False

False

False

(nie ocenie)

False

Typy danych

AndAlso operator jest zdefiniowany tylko dla Boolean Data Type (Visual Basic). Visual Basic konwertuje każdy operand jako niezbędne do Boolean i wykonuje operację w całkowicie Boolean.Jeśli możesz przypisać wynik na typ liczbowy, Visual Basic konwertuje go z Boolean do tego typu.Może to dać nieoczekiwane zachowanie.Na przykład 5 AndAlso 12 skutkuje –1 podczas konwersji na Integer.

Przeciążenie

And — Operator (Visual Basic) i IsFalse — Operator (Visual Basic) może być nadmiernie, co oznacza, że klasy lub struktura można ponownie zdefiniować zachowanie ich podczas operand ma typ tej klasy lub struktura.Przeciążanie And i IsFalse podmiotów gospodarczych wpływa na zachowanie AndAlso operator. Jeśli korzysta z kodu AndAlso na klasy lub struktura overloads And i IsFalse, należy zrozumieć ich zachowanie przedefiniować.Aby uzyskać więcej informacji, zobacz Procedury operatorów (Visual Basic).

Przykład

W poniższym przykładzie użyto AndAlso operator do wykonywania logiczną dwóch wyrażeń. Wynik jest Boolean wartość, która reprezentuje czy cały conjoined wyrażenia jest PRAWDA.Jeśli pierwszy argument Wyrażenie jest False, drugi nie jest sprawdzane.

Dim a As Integer = 10
Dim b As Integer = 8
Dim c As Integer = 6
Dim firstCheck, secondCheck, thirdCheck As Boolean
firstCheck = a > b AndAlso b > c
secondCheck = b > a AndAlso b > c
thirdCheck = a > b AndAlso c > b

Powyższy przykład produkuje wyniki True, False, i False, odpowiednio.Przy obliczaniu secondCheck, drugie wyrażenie nie jest sprawdzane, ponieważ pierwszy jest już False.Jednak drugie wyrażenie jest uwzględniane w obliczaniu thirdCheck.

W poniższym przykładzie Function procedura wyszukiwania dla danej wartości elementów tablicy. Jeśli tablica jest pusty lub przekroczył długość tablicy While wyciąg nie Testuj elementu tablicy przeciwko wartość wyszukiwania.

Public Function findValue(ByVal arr() As Double, 
    ByVal searchValue As Double) As Double 
    Dim i As Integer = 0
    While i <= UBound(arr) AndAlso arr(i) <> searchValue
        ' If i is greater than UBound(arr), searchValue is not checked.
        i += 1
    End While 
    If i > UBound(arr) Then i = -1
    Return i
End Function

Zobacz też

Informacje

Operatory logiczne/bitowe (Visual Basic)

Kolejność wykonywania działań (Visual Basic)

Operatory według funkcji (Visual Basic)

And — Operator (Visual Basic)

IsFalse — Operator (Visual Basic)

Koncepcje

Operatory logiczne i bitowe w Visual Basic