Логотип YeaHub

База вопросов

Собеседования

Тренажёр

База ресурсов

Обучение

Навыки

Войти

Выбери, каким будет IT завтра — вместе c нами!

YeaHub — это полностью открытый проект, призванный объединить и улучшить IT-сферу. Наш исходный код доступен для просмотра на GitHub. Дизайн проекта также открыт для ознакомления в Figma.

© 2026 YeaHub

Документы

Медиа

Назад
Вопрос про C#: as, is, data types

В чем разница между операторами is и as в C#?

Этот вопрос проверяет различие между операторами is и as, которые используются для работы с типами данных в C#.

Короткий ответ

Оператор is используется для проверки, является ли объект экземпляром определенного типа, возвращая true или false. Оператор as пытается выполнить преобразование объекта к указанному типу и возвращает null, если преобразование невозможно.

Длинный ответ

Операторы is и as выполняют различные задачи при работе с типами данных:

Оператор is:

  • Проверяет, является ли объект экземпляром указанного типа или совместим с ним.

  • Возвращает true, если тип объекта соответствует или совместим с указанным типом, и false в противном случае.

  • Используется для проверки типа объекта.

Пример:

object obj = "Hello";
if (obj is string)
{
    	Console.WriteLine("Это строка");
}

Оператор as:

  • Пытается выполнить безопасное преобразование объекта к указанному типу.

  • Если преобразование невозможно, возвращает null, а не генерирует исключение.

  • Используется, когда необходимо преобразовать объект, но при этом избежать ошибки при неудачном преобразовании.

Пример:

object obj = "Hello";
string str = obj as string;
if (str != null)
{
    	Console.WriteLine("Преобразование успешно");
}
else
{
    	Console.WriteLine("Преобразование не удалось");
}

Разница заключается в том, что is используется для проверки типа, а as — для безопасного преобразования, возвращающего null при неудаче.

Уровень

  • Рейтинг:

    2

  • Сложность:

    3

Навыки

  • C#

    C#

Ключевые слова

#as

#is

#data types

Подпишись на C# Developer в телеграм