C# Language Opérateurs relationnels


Exemple

Équivaut à

Vérifie si les opérandes fournis (arguments) sont égaux

"a" == "b"     // Returns false.
"a" == "a"     // Returns true.
1 == 0         // Returns false.
1 == 1         // Returns true.
false == true  // Returns false.
false == false // Returns true.

Contrairement à Java, l'opérateur de comparaison d'égalité fonctionne en mode natif avec les chaînes.

L'opérateur de comparaison d'égalité fonctionnera avec des opérandes de types différents si une distribution implicite existe de l'un à l'autre. Si aucune distribution implicite appropriée n'existe, vous pouvez appeler une conversion explicite ou utiliser une méthode pour convertir en un type compatible.

1 == 1.0              // Returns true because there is an implicit cast from int to double.
new Object() == 1.0   // Will not compile.
MyStruct.AsInt() == 1 // Calls AsInt() on MyStruct and compares the resulting int with 1.

Contrairement à Visual Basic.NET, l'opérateur de comparaison d'égalité est différent de l'opérateur d'affectation d'égalité.

var x = new Object();
var y = new Object();
x == y // Returns false, the operands (objects in this case) have different references.
x == x // Returns true, both operands have the same reference.

Ne pas confondre avec l'opérateur d'affectation ( = ).

Pour les types de valeur, l'opérateur renvoie true si les deux opérandes ont la même valeur.
Pour les types de référence, l'opérateur renvoie true si les deux opérandes sont égaux en référence (et non en valeur). Une exception est que les objets de chaîne seront comparés avec une égalité de valeur.

Pas égal

Vérifie si les opérandes fournis ne sont pas égaux.

"a" != "b"     // Returns true.
"a" != "a"     // Returns false.
1 != 0         // Returns true.
1 != 1         // Returns false.
false != true  // Returns true.
false != false // Returns false.

var x = new Object();
var y = new Object();
x != y // Returns true, the operands have different references.
x != x // Returns false, both operands have the same reference.

Cet opérateur renvoie effectivement le résultat opposé à celui de l'opérateur égal ( == )

Plus grand que

Vérifie si le premier opérande est supérieur au deuxième opérande.

3 > 5    //Returns false.
1 > 0    //Returns true.
2 > 2    //Return false.

var x = 10;
var y = 15;
x > y    //Returns false.
y > x    //Returns true.

Moins que

Vérifie si le premier opérande est inférieur au deuxième opérande.

2 < 4     //Returns true.
1 < -3    //Returns false.
2 < 2     //Return false.

var x = 12;
var y = 22;
x < y    //Returns true.
y < x    //Returns false.

Supérieur à égal à

Vérifie si le premier opérande est supérieur à la seconde opérande.

7 >= 8    //Returns false.
0 >= 0    //Returns true.

Moins que égal à

Vérifie si le premier opérande est inférieur au deuxième opérande.

2 <= 4    //Returns true.
1 <= -3    //Returns false.
1 <= 1     //Returns true.