Оператор ==
Оператор == для string сравнивает символы текста, а не ссылки на объекты. Две строки с одинаковым содержимым дают true. Для null обе стороны должны быть null.
Синтаксис
bool res = a == b;
Пример
Давайте сравним одинаковый текст:
using System;
class Program
{
static void Main()
{
string a = "abcde";
string b = "abcde";
Console.WriteLine(a == b);
}
}
Результат выполнения кода:
True
Пример
Давайте сравним разный текст:
using System;
class Program
{
static void Main()
{
Console.WriteLine("abcde" == "12345");
}
}
Результат выполнения кода:
False
Пример
Давайте сравним новую строку с литералом:
using System;
class Program
{
static void Main()
{
string a = new string(new[] { 'a', 'b', 'c', 'd', 'e' });
Console.WriteLine(a == "abcde");
}
}
Результат выполнения кода:
True
Пример
Давайте проверим два null:
#nullable enable
using System;
class Program
{
static void Main()
{
string a = null;
string b = null;
Console.WriteLine(a == b);
}
}
Результат выполнения кода:
True
Смотрите также
-
Equals,
который явно сравнивает строки -
Compare,
который возвращает порядок -
StringComparison,
который задаёт правила -
CompareOrdinal,
который сравнивает по кодам