Udostępnij za pośrednictwem


Operator OrElse (Visual Basic)

Wykonuje zwieranie włącznie alternatywę logiczną dwóch wyrażeń.

result = expression1 OrElse expression2

Części

  • result
    Wymagane.Każdy Boolean wyrażenie.

  • 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 procedur.

Jeśli jeden lub 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

(nie ocenie)

True

False

True

True

False

False

False

Typy danych

OrElse Operator jest zdefiniowany tylko dla Typ danych Boolean (Visual Basic).Visual Basic konwertuje każdy operand jako niezbędne do Boolean i wykonuje operację w całkowicie Boolean.Jeśli wynik jest przypisana do typu liczbowego, Visual Basic konwertuje go z Boolean do tego typu.Może to dać nieoczekiwane zachowanie.Na przykład 5 OrElse 12 skutkuje –1 podczas konwersji na Integer.

Przeciążenie

Lub operatora (Visual Basic) i Operator IsTrue (Visual Basic) może być nadmiernie, co oznacza, że klasy lub struktury można ponownie zdefiniować zachowanie ich podczas operand ma typ tej klasy lub struktury.Przeciążanie Or i IsTrue podmiotów gospodarczych wpływa na zachowanie OrElse operatora.Jeśli korzysta z kodu OrElse na klasy lub struktury, która overloads Or i IsTrue, należy zrozumieć ich zachowanie przedefiniować.Aby uzyskać więcej informacji, zobacz Operator procedur (Visual Basic).

Przykład

W poniższym przykładzie użyto OrElse operatora do wykonywania alternatywę logiczną dwóch wyrażeń.Wynik jest Boolean wartość, która reprezentuje czy spełniony jest jeden z dwóch wyrażeń.Jeśli pierwszy argument Wyrażenie jest True, 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 OrElse b > c
secondCheck = b > a OrElse b > c
thirdCheck = b > a OrElse c > b

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

W poniższym przykładzie If...Then oświadczenie zawierające dwa wywołania procedur.Jeżeli pierwsze wywołanie zwraca True, druga procedura nie jest wywoływana.Może dać nieoczekiwane wyniki, jeśli druga procedura wykonuje ważnych zadań, które powinny być wykonywane zawsze po uruchomieniu tej sekcji kodu.

If testFunction(5) = True OrElse otherFunction(4) = True Then
    ' If testFunction(5) is True, otherFunction(4) is not called.
    ' Insert code to be executed.
End If

Zobacz też

Informacje

Operatory logiczne lub operatory (Visual Basic)

Pierwszeństwo operatorów w języku Visual Basic

Podmioty wymienione według funkcji (Visual Basic)

Lub operatora (Visual Basic)

Operator IsTrue (Visual Basic)

Koncepcje

Operatory logiczne i operatory w języku Visual Basic