Sdílet prostřednictvím


And – operátor (Visual Basic)

Provede logické spojení se dvěma Boolean výrazy nebo bitovým spojením dvou číselných výrazů.

Syntaxe

result = expression1 And expression2  

Součástky

result
Povinný: Libovolný Boolean nebo číselný výraz Pro logické porovnání result je logické spojení dvou Boolean hodnot. U bitových operací result je číselná hodnota představující bitové spojení dvou číselných bitových vzorů.

expression1
Povinný: Libovolný Boolean nebo číselný výraz

expression2
Povinný: Libovolný Boolean nebo číselný výraz

Poznámky

V případě logického porovnání result , je-li True a pouze v případě, že se obě expression1 a expression2 vyhodnotí jako True. Následující tabulka ukazuje, jak result je určeno.

Pokud expression1 je A expression2 je Hodnota result je
True True True
True False False
False True False
False False False

Poznámka:

V logickém porovnání And operátor vždy vyhodnocuje oba výrazy, což může zahrnovat volání procedur. Operátor AndAlso provádí zkratování, což znamená, že pokud expression1 je False, pak expression2 není vyhodnocen.

Při použití na číselné hodnoty And operátor provede bitové porovnání identicky umístěných bitů ve dvou číselných výrazech a nastaví odpovídající bit result podle následující tabulky.

Pokud je bit v expression1 A bit in expression2 je Bit in result je
1 1 1
1 0 0
0 1 0
0 0 0

Poznámka:

Vzhledem k tomu, že logické a bitové operátory mají nižší prioritu než jiné aritmetické a relační operátory, měly by být všechny bitové operace uzavřeny v závorkách, aby se zajistily přesné výsledky.

Typy dat

Pokud se operandy skládají z jednoho Boolean výrazu a jednoho číselného výrazu, Jazyk Visual Basic převede Boolean výraz na číselnou hodnotu (–1 pro a 0 pro TrueFalse) a provede bitové operace.

Pro logické porovnání je Booleandatový typ výsledku . Pro bitové porovnání je datový typ výsledku číselný typ vhodný pro datové typy expression1 a expression2. Viz tabulka Relační a bitové porovnání v datových typech výsledků operátoru.

Poznámka:

Operátor And může být přetížen, což znamená, že třída nebo struktura mohou předefinovat jeho chování, pokud operand má typ této třídy nebo struktury. Pokud váš kód používá tento operátor pro takovou třídu nebo strukturu, ujistěte se, že rozumíte jeho předdefinované chování. Další informace naleznete v tématu Procedury operátoru.

Příklad 1

Následující příklad používá And operátor k provedení logické spojení se dvěma výrazy. Výsledkem je Boolean hodnota, která představuje, zda jsou Trueoba výrazy .

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

Předchozí příklad vytvoří výsledky True a Falsev uvedeném pořadí.

Příklad 2

Následující příklad používá And operátor k provedení logické spojení na jednotlivých bitech dvou číselných výrazů. Bit ve výsledném vzoru se nastaví, pokud jsou odpovídající bity v operandech nastaveny na hodnotu 1.

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)

Předchozí příklad vytvoří výsledky 8, 2 a 0.

Viz také