Оператор != (справочник по C#)
Обновлен: Ноябрь 2007
Оператор неравенства (!=) возвращает значение false, если его операнды равны, в противном случае — значение true. Операторы неравенства предопределены для всех типов, включая строку и объект. Типы, определенные пользователем, могут вызвать перегрузку оператора !=.
Заметки
Для предопределенных типов значений оператор неравенства (!=) возвращает значение true, если значения его операндов совпадают, в противном случае — значение false. Для ссылочных типов, отличных от string, оператор != возвращает значение true, если оба его операнда ссылаются на разные объекты. Для типа string оператор != сравнивает значения строк.
Типы значений, определенные пользователем, могут вызвать перегрузку оператора != (см. раздел оператор). Ее могут вызвать и пользовательские ссылочные типы, хотя по умолчанию оператор != работает в соответствии с приведенным выше описанием как для предопределенных, так и пользовательских ссылочных типов. Если оператор != перегружен, то оператор == тоже должен быть перегружен. Операции над целыми типами обычно разрешены в перечислениях.
Пример
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
*/
См. также
Основные понятия
Руководство по программированию в C#