& – operátor (Referenční dokumentace jazyka C#)
& operátor může pracovat jako unární operátor nebo binární operátor.
Poznámky
Unární & Vrátí adresu jeho operand, operátor (vyžaduje nebezpečných kontextu).
Binární & operátory jsou předdefinovány pro integrální typy a bool.Pro integrální typy & Vypočítá logický bitový operátor AND operandů.Pro bool operandy, & Vypočítá logický a jeho operandy; výsledek je true pouze v případě obou operandů jsou true.
& Vyhodnocuje operátor oba operátory bez ohledu na první hodnotu společnosti.Příklad:
int i = 0;
if (false & ++i == 1)
{
// i is incremented, but the conditional
// expression evaluates to false, so
// this block does not execute.
}
Uživatelem definované typy může přetížit binární soubor & operátor (viz operátor).Operace na integrální typy jsou obecně povoleny ve výčtu.Binární operátor je přetížena, odpovídajícího operátoru přiřazení, případně při také implicitně přetížené.
Příklad
class BitwiseAnd
{
static void Main()
{
// The following two statements perform logical ANDs.
Console.WriteLine(true & false);
Console.WriteLine(true & true);
// The following line performs a bitwise AND of F8 (1111 1000) and
// 3F (0011 1111).
// 1111 1000
// 0011 1111
// ---------
// 0011 1000 or 38
Console.WriteLine("0x{0:x}", 0xf8 & 0x3f);
}
}
// Output:
// False
// True
// 0x38