Sdílet prostřednictvím


Operátory porovnání v jazyce Visual Basic

Relační operátory porovnání dvou výrazů a vrácení Boolean hodnotu, která představuje vztah mezi jejich hodnoty.Pro porovnání číselných hodnot, operátory pro porovnávání řetězců a operátory porovnání objektů jsou operátory.Všechny tři typy operátorů jsou uvedeny zde.

Porovnání číselných hodnot

Visual Basicporovná číselné hodnoty šesti operátory číselné porovnání.Každý provozovatel trvá dva výrazy, které číselné hodnoty jako operandy.Následující tabulka uvádí operátory a uvádí příklady každého.

Operátor

Podmínka testovány

Příklady

=(Rovnost)

Druhá hodnota je hodnota rovná první výraz?

23 = 33 ' False

23 = 23 ' True

23 = 12 ' False

<>(Nerovnost)

Je hodnota prvního výrazu nerovné hodnoty druhého?

23 <> 33 ' True

23 <> 23 ' False

23 <> 12 ' True

<(Menší než)

Je hodnota prvního výrazu menší než hodnota druhého?

23 < 33 ' True

23 < 23 ' False

23 < 12 ' False

>(Větší než)

Hodnota prvního výrazu je větší než hodnota druhého?

23 > 33 ' False

23 > 23 ' False

23 > 12 ' True

<=(Menší než nebo rovno)

Je menší nebo rovna hodnotě druhého hodnota prvního výrazu?

23 <= 33 ' True

23 <= 23 ' True

23 <= 12 ' False

>=(Větší než nebo rovno)

Je hodnota prvního výrazu větší nebo rovna hodnotě druhého?

23 >= 33 ' False

23 >= 23 ' True

23 >= 12 ' True

Porovnávání řetězců

Visual BasicPorovná řetězce pomocí Like – operátor (Visual Basic) jako číselný relační operátory.Like Operátor umožňuje určit vzorek.Řetězec pak porovnávají vzorku, a pokud odpovídá, výsledek je True.Jinak je výsledek False.Číselných operátorů umožňuje porovnat String hodnoty na základě jejich pořadí, jak ukazuje následující příklad.

"73" < "9"

' The result of the preceding comparison is True.

Výsledek v předchozím příkladu je True protože první znak v řetězci prvního seřadí před první znak v řetězci druhého.Pokud první znaky byly stejné, srovnání by pokračovat na další znak v oba řetězce atd.Můžete také otestovat rovnosti řetězce pomocí operátoru rovnosti, jak ukazuje následující příklad.

"734" = "734"

' The result of the preceding comparison is True.

Pokud je předpona jiného, například "aa" a "aaa" jeden řetězec delší řetězec, se považuje za větší než kratší řetězce.To ukazuje následující příklad.

"aaa" > "aa"

' The result of the preceding comparison is True.

Pořadí řazení je založena na binární porovnání nebo textové porovnání v závislosti na nastavení Option Compare.Další informace získáte v tématu Option Compare – příkaz.

Porovnání objektů

Visual Basicobjekt porovná, dvě proměnné odkaz Is – operátor (Visual Basic) a IsNot – operátor (Visual Basic).Zjistěte, zda dvě proměnné referenční odkazují na stejnou instanci objektu můžete použít jeden z těchto operátorů.To ukazuje následující příklad.

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

V předchozím příkladu x Is y vyhodnocen jako True, protože obě proměnné odkazují na stejnou instanci.Tento výsledek s následující příklad kontrast.

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

V předchozím příkladu x Is y vyhodnocen jako False, protože přestože proměnných, odkazovat na objekty stejného typu, odkazují jiné instance tohoto typu.

Pokud chcete test pro dva objekty neodkazuje na stejnou instanci IsNot operátor umožňuje vyhnout se gramaticky clumsy kombinaci Not a Is.To ukazuje následující příklad.

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

V předchozím příkladu If a IsNot b je ekvivalentní If Not a Is b.

Porovnání typ objektu

Můžete otestovat, zda je objekt určitého typu se TypeOf...Is výraz.Syntaxe je následující:

TypeOf <objectexpression> Is <typename>

Při typename Určuje typ rozhraní, pak bude TypeOf...Is vrátí výraz True Pokud objekt implementuje rozhraní typu.Při typename je typ třídy, vrátí výraz True Pokud je instance zadané třídy nebo třídy, který je odvozen od třídy zadaný objekt.To ukazuje následující příklad.

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

V předchozím příkladu TypeOf x Is Control výraz vyhodnocen jako True protože typu x je Button, které dědí z Control.

Další informace naleznete v tématu TypeOf – operátor (Visual Basic).

Viz také

Referenční dokumentace

Operátory porovnání (Visual Basic)

Koncepty

Porovnání hodnot (Visual Basic)

Aritmetické operátory v jazyce Visual Basic

Operátory řetězení v jazyce Visual Basic

Logické a bitové operátory v jazyce Visual Basic

Další zdroje

Operátory (Visual Basic)