Udostępnij za pośrednictwem


Operatory porównania w Visual Basic

Operatory porównania porównywania dwóch wyrażeń i zwracania Boolean wartość, która reprezentuje relację ich wartości.Istnieją operatory porównywania wartości numerycznych, operatory porównywania ciągów i operatorów porównywania obiektów.Wszystkie trzy typy operatorów są omówione w niniejszym rozporządzeniu.

Porównanie wartości liczbowe

Visual Basicporównuje wartości liczbowe za pomocą sześciu operatorów porównanie numeryczne.Każdy operator stoi operandy dwóch wyrażeń, które oceniają wartości liczbowe.Poniższej tabeli podano listę operatorów oraz zaprezentowano przykłady każdego.

Operator

Warunek badane

Przykłady

=(Równości)

Wartość pierwszego równego wyrażenie wartości drugiego?

23 = 33 ' False

23 = 23 ' True

23 = 12 ' False

<>(Nierówność)

Czy wartość pierwszego wyrażenia jest nierówne wartości drugiego?

23 <> 33 ' True

23 <> 23 ' False

23 <> 12 ' True

<(Mniejsze niż)

Wartość pierwszego wyrażenia mniejsze niż wartość drugiego?

23 < 33 ' True

23 < 23 ' False

23 < 12 ' False

>(Większe niż)

Czy wartość pierwszego wyrażenia jest większa niż wartość drugiego?

23 > 33 ' False

23 > 23 ' False

23 > 12 ' True

<=(Mniejsza lub równa)

Wartość pierwszego wyrażenia jest mniejsza niż wartość drugiego?

23 <= 33 ' True

23 <= 23 ' True

23 <= 12 ' False

>=(Większa niż lub równa)

Jest wartością pierwszego wyrażenia większa lub równa wartości drugiego?

23 >= 33 ' False

23 >= 23 ' True

23 >= 12 ' True

Porównywanie ciągów

Visual Basicporównuje ciągi przy użyciu funkcji Like — Operator (Visual Basic) jak również podmioty porównanie numeryczne.Like Operatora pozwala określić wzorzec.Ciąg jest następnie porównywane deseń, i jeśli jest on zgodny, wynik jest True.W przeciwnym razie wynikiem jest False.Numeryczne operatory pozwalają porównać String wartości oparte na ich porządek sortowania, jak pokazano w następującym przykładzie.

"73" < "9"

' The result of the preceding comparison is True.

Wynik w poprzednim przykładzie jest True , ponieważ pierwszy znak w ciągu pierwszego sortuje przed pierwszego znaku drugiego ciągu.Jeśli pierwsze znaki były równe, porównanie będzie kontynuować do następnego znaku w obu ciągów i tak dalej.Można również przeprowadzić test równości ciągów za pomocą operatora równości, jak pokazano w następującym przykładzie.

"734" = "734"

' The result of the preceding comparison is True.

Jeśli jeden ciąg jest prefiks innego, takie jak "aa" i "aaa" dłuższy ciąg jest uważane za większą niż krótsze ciąg.Poniższy przykład ilustruje to.

"aaa" > "aa"

' The result of the preceding comparison is True.

Porządek sortowania jest oparty na porównanie binarne lub porównanie tekstowe, w zależności od ustawienia Option Compare.Aby uzyskać więcej informacji, zobacz Option Compare — Instrukcja.

Porównywanie obiektów

Visual BasicPorównuje dwa obiektu odniesienia zmiennych z Is — Operator (Visual Basic) i IsNot — Operator (Visual Basic).Aby ustalić, czy dwie zmienne odniesienia odnoszą się do tego samego wystąpienia obiektu, można użyć jednej z tych operatorów.Poniższy przykład ilustruje to.

Dim x As testClass
Dim y As New testClass()
x = y
If x Is y Then 
    ' Insert code to run if x and y point to the same instance. 
End If

W poprzednim przykładzie x Is y wynikiem True, ponieważ zarówno zmienne, które odnoszą się do tego samego wystąpienia.Porównajmy ten wynik w następującym przykładzie.

Dim x As New customer()
Dim y As New customer()
If x Is y Then 
    ' Insert code to run if x and y point to the same instance. 
End If

W poprzednim przykładzie x Is y wynikiem False, ponieważ chociaż zmienne odnosi się do obiektów tego samego typu, odnoszą się do różnych wystąpień tego typu.

Gdy użytkownik chce przetestować dla dwóch obiektów, nie wskazując tym samym wystąpieniu IsNot operatora pozwala uniknąć kombinacji gramatycznie clumsy Not i Is.Poniższy przykład ilustruje to.

Dim a As New classA()
Dim b As New classB()
If a IsNot b Then 
    ' Insert code to run if a and b point to different instances. 
End If

W poprzednim przykładzie If a IsNot b jest równoważne z If Not a Is b.

Porównanie typu obiektu

Można sprawdzić, czy obiekt jest określonego typu z TypeOf...Is wyrażenie.Składnia jest następująca:

TypeOf <objectexpression> Is <typename>

Gdy typename określa typ interfejsu, a następnie TypeOf...Is zwraca wyrażenie True , jeśli obiekt implementuje typ interfejsu.Gdy typename jest typem klasy, a następnie zwraca wyrażenie True , jeśli obiekt jest wystąpieniem określonej klasy lub klasy, który wynika z określonej klasy.Poniższy przykład ilustruje to.

Dim x As System.Windows.Forms.Button
x = New System.Windows.Forms.Button()
If TypeOf x Is System.Windows.Forms.Control Then 
    ' Insert code to run if x is of type System.Windows.Forms.Control. 
End If

W poprzednim przykładzie TypeOf x Is Control wyrażenie zostanie oszacowane jako True ponieważ typ x jest Button, która dziedziczy z Control.

Aby uzyskać więcej informacji, zobacz TypeOf — Operator (Visual Basic).

Zobacz też

Informacje

Operatory porównania (Visual Basic)

Koncepcje

Porównania wartości (Visual Basic)

Operatory arytmetyczne w Visual Basic

Operatory łączenia w Visual Basic

Operatory logiczne i bitowe w Visual Basic

Inne zasoby

Operatory (Visual Basic)