Compartilhar via


&&Operador (translation from VPE for Csharp Reference)

A condicional- E operador (&&) executa uma lógica- AND do seu bool operandos, mas apenas avalia seu segundo operando, se necessário.

Comentários

A operação

x && y

corresponde à operação

x & y

exceto se x é false, y não será avaliado (porque é o resultado da operação e false não importa qual o valor de y pode ser). Isso é conhecido sistema autônomo "" avaliação de circuito curto.

A condicional- E o operador não pode ser sobrecarregado, mas sobrecargas dos operadores lógicos regulares e operadores True and False, com algumas restrições, também são considerados sobrecargas de operadores lógicos condicionais.

Exemplo

No exemplo a seguir, observe que a expressão usando && avalia apenas o primeiro operando.

class LogicalAnd
{
    static bool Method1()
    {
        Console.WriteLine("Method1 called");
        return false;
    }

    static bool Method2()
    {
        Console.WriteLine("Method2 called");
        return true;
    }

    static void Main()
    {
        Console.WriteLine("regular AND:");
        Console.WriteLine("result is {0}", Method1() & Method2());
        Console.WriteLine("short-circuit AND:");
        Console.WriteLine("result is {0}", Method1() && Method2());
    }
}
/*
Output:
regular AND:
Method1 called
Method2 called
result is False
short-circuit AND:
Method1 called
result is False
*/

Especificação da linguagem C#

Para obter mais informações, consulte as seções a seguir no Especificação da linguagem C#:

  • 7.11.2 Operadores definidos pelo usuário condicionais lógicos

Consulte também

Conceitos

Guia de Programação C#

Referência

Operadores C#

Outros recursos

Referência C#