Exporter (0) Imprimer
Développer tout

&&, opérateur (Référence C#)

L'opérateur AND conditionnel (&&) effectue une opération AND logique sur les opérandes de type bool, mais évalue uniquement le second opérande, si nécessaire.

L'opération

x && y

correspond à l'opération

x & y

à la différence près que si la valeur false est affectée à x , y n'est pas évalué (car le résultat de l'opération AND est false, quelle que soit la valeur de y). Ce concept porte le nom d'évaluation « de court-circuit ».

L'opérateur AND conditionnel ne peut pas être surchargé, mais la surcharge des opérateurs logiques normaux et des opérateurs true et false est, dans une certaine mesure, considérée également comme une surcharge des opérateurs logiques conditionnels.

Dans cet exemple, notez que l'expression utilisant && évalue seulement le premier opérande.

// cs_operator_logical_and.cs
using System;
class MainClass
{
   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());
   }
}

Sortie

 
regular AND:
Method1 called
Method2 called
result is False
short-circuit AND:
Method1 called
result is False

Pour plus d'informations, consultez les sections suivantes dans Spécifications du langage C# :

  • 7.11.2 Opérateurs logiques conditionnels définis par l'utilisateur

Ajouts de la communauté

AJOUTER
Afficher:
© 2015 Microsoft