Megosztás a következőn keresztül:


És operátor (Visual Basic)

Logikai kötőjelet hajt végre két Boolean kifejezésen, vagy bitenkénti kötőjelet két numerikus kifejezésen.

Syntax

result = expression1 And expression2  

Részek

result
Szükséges. Bármely Boolean vagy numerikus kifejezés. Logikai összehasonlítás esetén result két Boolean érték logikai kötőeleme. Bitenkénti műveletek esetén egy numerikus érték, result amely két numerikus bitminta bitenkénti kötőjelét jelöli.

expression1
Szükséges. Bármely Boolean vagy numerikus kifejezés.

expression2
Szükséges. Bármely Boolean vagy numerikus kifejezés.

Megjegyzések

Logikai összehasonlítás esetén a ha és csak akkor vanTrue, result ha mindkettőexpression1, és expression2 kiértékeli a következőtTrue: . Az alábbi táblázat a meghatározás módját result mutatja be.

Ha expression1 igen, És expression2 van Az érték a következő result :
True True True
True False False
False True False
False False False

Feljegyzés

Logikai összehasonlítás esetén az And operátor mindig mindkét kifejezést kiértékeli, ami magában foglalhatja az eljáráshívásokat is. Az AndAlso operátor rövidzárolást végez, ami azt jelenti, hogy ha expression1 igenFalse, akkor expression2 nem lesz kiértékelve.

Numerikus értékekre alkalmazva az And operátor két numerikus kifejezés azonos pozícióban lévő bitjeinek bitenkénti összehasonlítását hajtja végre, és a megfelelő bitet az alábbi táblázat szerint állítja be result .

Ha a bit be van expression1 És a bit be expression2 van A bit be van result
0 0 0
0 0 0
0 0 0
0 0 0

Feljegyzés

Mivel a logikai és bitenkénti operátorok elsőbbsége alacsonyabb, mint a többi aritmetikai és relációs operátoré, a pontos eredmény érdekében a bitenkénti műveleteket zárójelben kell megadni.

Adattípusok

Ha az operandusok egy Boolean kifejezésből és egy numerikus kifejezésből állnak, a Visual Basic numerikus értékké alakítja a Boolean kifejezést (–1 és True 0 ) Falseés bitenkénti műveletet hajt végre.

Logikai összehasonlítás esetén az eredmény adattípusa .Boolean A bitenkénti összehasonlításhoz az eredmény adattípusa egy numerikus típus, amely megfelel az és expression1expression2a . Lásd a "Relációs és bitenkénti összehasonlítások" táblát az operátoreredmények adattípusaiban.

Feljegyzés

Az And operátor túlterhelhető, ami azt jelenti, hogy egy osztály vagy struktúra újradefiniálta a viselkedését, ha egy operandus az adott osztály vagy struktúra típusával rendelkezik. Ha a kód egy ilyen osztályon vagy struktúrán használja ezt az operátort, győződjön meg arról, hogy tisztában van az újradefiniált viselkedésével. További információ: Operátori eljárások.

1. példa

Az alábbi példa az And operátor használatával végez logikai kötőszót két kifejezésen. Az eredmény egy Boolean olyan érték, amely azt jelzi, hogy mindkét kifejezés szerepel-e True.

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

Az előző példában a következő eredmények lesznek TrueFalselétrehozva:

2. példa

Az alábbi példa az And operátor használatával végez logikai kötőjelet két numerikus kifejezés egyes bitjein. Az eredményminta bitje akkor van beállítva, ha az operandusok megfelelő bitjei 1-nek vannak beállítva.

Dim a As Integer = 10
Dim b As Integer = 8
Dim c As Integer = 6
Dim firstPattern, secondPattern, thirdPattern As Integer
firstPattern = (a And b)
secondPattern = (a And c)
thirdPattern = (b And c)

Az előző példa 8, 2 és 0 eredményt ad.

Lásd még