Так, це правильний спосіб перевірити optionalнаявність nilабо будь-який objectForKeyметод повернення методу, AnyObject?який є Implicit optional.
Тож якщо userDefaults.objectForKey(kUSERID)має якесь значення, ніж воно оцінює true. якщо userDefaults.objectForKey(kUSERID)має nilзначення, ніж воно оцінює false.
З швидкого посібника з програмування
Якщо виписки та примусове розгортання
Ви можете використовувати оператор if, щоб з’ясувати, чи містить необов’язкове значення. Якщо необов’язковий елемент має значення, він оцінюється як істина; якщо воно взагалі не має значення, воно оцінюється як false.
Зараз у симуляторах є помилка, ніж після встановлення ключа, userDefaultsвони завжди залишаються встановленими, незалежно від того, чи ви видаляєте програму. Вам потрібно скинути симулятор.
Скинути Simulator перевірити цей метод перед установкою ключа в userDefaultsабо вийняти ключ userDefaults.removeObjectForKey(kUSERID)із userDefaults
і він буде повертати NO.А пристрій воно дозволена iOS8 beta4.