Логотип YeaHub

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

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

Тренажёр

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

Обучение

Навыки

Задачи

Войти

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

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

© 2026 YeaHub

AI info

Карта сайта

Документы

Медиа

Назад
Вопрос про Swift : nil, nan, optional, computation

В чем разница между NIL и NaN?

Этот вопрос проверяет понимание двух разных понятий: отсутствия значения (nil) и нечислового значения (NaN), а также их областей применения.

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

nil означает отсутствие значения и используется в опциональных типах в Swift, указывая, что значение отсутствует. NaN (Not a Number) означает результат вычисления, который не является числом, например, 0/0 или √(-1). nil применяется для типов данных, а NaN — для чисел с плавающей точкой.

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

nil в Swift:

nil — это специальное значение, которое означает отсутствие какого-либо значения. Оно применяется только к опциональным типам, которые явно определены как способные быть nil.

Пример:

var name: String? = nil // Переменная name не имеет значения
if name == nil {
    	print("Имя отсутствует")
}

NaN в Swift:

NaN (Not a Number) — это значение типа Double или Float, которое появляется в результате вычислений, не имеющих смысла с математической точки зрения.

Пример:

let invalidResult = 0.0 / 0.0
print(invalidResult.isNaN) // true

Ключевые отличия:

  • nil используется для указания отсутствия значения, а NaN — для указания результата нечислового вычисления.

  • nil применяется к опциональным типам, а NaN — к числовым типам с плавающей точкой.

  • Нельзя напрямую присвоить nil числу, но можно работать с NaN внутри вычислений.

Используйте nil для работы с отсутствующими данными и NaN для проверки валидности числовых вычислений.

  • Аватар

    iOS Guru

    Roman Isakov

    Guru – это эксперты YeaHub, которые помогают развивать комьюнити.

Уровень

  • Рейтинг:

    2

  • Сложность:

    4

Навыки

  • Swift

    Swift

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

#nil

#nan

#optional

#computation

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

  • Аватар

    iOS Guru

    Roman Isakov

    Guru – это эксперты YeaHub, которые помогают развивать комьюнити.