Что лучше использовать в C# при сравнении на null "is" или "=="?

Рейтинг: 3Ответов: 1Опубликовано: 29.01.2023

Собственное сам вопрос: Что лучше использовать при сравнении объекта на null "is" или "==" и в чем разница если она вообще есть?

if(item is null)
    throw new NullReferenceException(item);

или

if(item == null)
    throw new NullReferenceException(item);

Ответы

▲ 9Принят

Единственное, когда может быть разница - это когда == переопределён. А без переопределения оба варианта компилируется в один и тот же IL код и соответственно в один и тот же ассемблерный код, следовательно разницы между ними нет