Operador != (Referencia de C#)
El operador de desigualdad (!=) devuelve false si sus dos operandos son iguales; en caso contrario, devuelve true. Los operadores de desigualdad están predefinidos para todos los tipos, incluidos string y object. Los tipos definidos por el usuario pueden sobrecargar el operador !=
Comentarios
Para los tipos de valor predefinidos, el operador de desigualdad (!=) devuelve true si los valores de sus operandos son diferentes, y false en caso contrario. Para los tipos de referencia, excepto string, != devuelve true si sus dos operandos se refieren a objetos diferentes. Para el tipo string, != compara los valores de las cadenas.
Los tipos de valor definidos por el usuario pueden sobrecargar el operador != (vea operator (Referencia de C#)). También pueden hacerlo los tipos de referencia definidos por el usuario, aunque, de forma predeterminada, != se comporta como se ha descrito anteriormente tanto para los tipos de referencia predefinidos como para los definidos por el usuario. Si se sobrecarga !=, también se debe sobrecargar ==. Las operaciones en tipos integrales se suelen permitir en enumeraciones.
Ejemplo
class InequalityTest
{
static void Main()
{
// Numeric inequality:
Console.WriteLine((2 + 2) != 4);
// Reference equality: two objects, same boxed value
object s = 1;
object t = 1;
Console.WriteLine(s != t);
// String equality: same string value, same string objects
string a = "hello";
string b = "hello";
// compare string values
Console.WriteLine(a != b);
// compare string references
Console.WriteLine((object)a != (object)b);
}
}
/*
Output:
False
True
False
False
*/