Logikai kifejezések (Visual Basic)
A logikai kifejezés olyan kifejezés, amely a logikai adattípus értékét értékeli ki: True
vagy False
. Boolean
a kifejezések több formában is használhatók. A legegyszerűbb egy változó értékének Boolean
közvetlen összehasonlítása egy Boolean
literálhoz, ahogy az az alábbi példában is látható.
If newCustomer = True Then
' Insert code to execute if newCustomer = True.
Else
' Insert code to execute if newCustomer = False.
End If
Az = operátor két jelentése
Figyelje meg, hogy a hozzárendelési utasítás newCustomer = True
ugyanúgy néz ki, mint az előző példában szereplő kifejezés, de egy másik függvényt hajt végre, és másképp használja. Az előző példában a kifejezés newCustomer = True
logikai értéket jelöl, a =
jelet pedig összehasonlító operátorként értelmezi a rendszer. Önálló utasításban a rendszer hozzárendelési operátorként értelmezi a =
jelet, és a jobb oldalon lévő értéket a bal oldali változóhoz rendeli. Az alábbi példa ezt szemlélteti.
If newCustomer = True Then
newCustomer = False
End If
További információ: Érték-összehasonlítások és -utasítások.
Összehasonlító operátorok
Az olyan összehasonlító operátorok, mint =
a , <
, >
, <>
<=
, és >=
logikai kifejezéseket hoznak létre az operátor bal oldalán lévő kifejezés és az operátor jobb oldalán lévő kifejezés összehasonlításával és az eredmény True
False
kiértékelésével. Az alábbi példa ezt szemlélteti.
42 < 81
Mivel a 42 kisebb, mint 81, az előző példában szereplő logikai kifejezés a következő lesz True
: . Az ilyen típusú kifejezésekről további információt az Érték-összehasonlítások című témakörben talál.
Összehasonlító operátorok logikai operátorokkal kombinálva
Az összehasonlító kifejezések logikai operátorokkal kombinálhatók összetettebb logikai kifejezések létrehozásához. Az alábbi példa az összehasonlító operátorok logikai operátorokkal való együttes használatát mutatja be.
x > y And x < 1000
Az előző példában a teljes kifejezés értéke az operátor mindkét oldalán And
lévő kifejezések értékeitől függ. Ha mindkét kifejezés az True
, akkor a teljes kifejezés kiértékelése a következő lesz True
: . Ha bármelyik kifejezés is, False
akkor a teljes kifejezés kiértékelése a következő lesz False
: .
Rövidzárolású operátorok
A logikai operátorok AndAlso
és OrElse
a rövidzárolásnak nevezett viselkedés. A rövidzárlat-operátor először kiértékeli a bal operandust. Ha a bal operandus határozza meg a teljes kifejezés értékét, akkor a program végrehajtása a megfelelő kifejezés kiértékelése nélkül folytatódik. Az alábbi példa ezt szemlélteti.
If 45 < 12 AndAlso testFunction(3) = 81 Then
' Add code to continue execution.
End If
Az előző példában az operátor kiértékeli a bal oldali kifejezést. 45 < 12
Mivel a bal oldali kifejezés kiértékelése így False
történik, a teljes logikai kifejezésnek ki kell értékelnie a következőt False
: . A program végrehajtása így kihagyja a kód végrehajtását a blokkon belül a If
megfelelő kifejezés kiértékelése nélkül. testFunction(3)
Ez a példa nem hív, testFunction()
mert a bal oldali kifejezés meghamisítja a teljes kifejezést.
Hasonlóképpen, ha egy logikai kifejezés bal oldali kifejezése OrElse
True
kiértékeli azt, a végrehajtás a következő kódsorra lép a megfelelő kifejezés kiértékelése nélkül, mert a bal oldali kifejezés már érvényesítette a teljes kifejezést.
Összehasonlítás nem rövidzárolású operátorokkal
Ezzel szemben a logikai operátor mindkét oldalát kiértékeli a rendszer a logikai operátorok And
Or
használatakor. Az alábbi példa ezt szemlélteti.
If 45 < 12 And testFunction(3) = 81 Then
' Add code to continue execution.
End If
Az előző példa akkor is meghívja a hívásokat testFunction()
, ha a bal oldali kifejezés kiértékeli a következőt False
: .
Zárójeles kifejezések
Zárójelek használatával szabályozhatja a logikai kifejezések kiértékelési sorrendjét. A zárójelek által körülvett kifejezések először kiértékelnek. A beágyazás több szintje esetén elsőbbséget élveznek a legmélyebb beágyazott kifejezések. Zárójelben a kiértékelés az operátorok elsőbbségi szabályai szerint folytatódik. További információ: Operátorok elsőbbsége a Visual Basicben.
Lásd még
Visszajelzés
https://aka.ms/ContentUserFeedback.
Hamarosan elérhető: 2024-ben fokozatosan kivezetjük a GitHub-problémákat a tartalom visszajelzési mechanizmusaként, és lecseréljük egy új visszajelzési rendszerre. További információ:Visszajelzés küldése és megtekintése a következőhöz: