Какой из двух приведенных ниже примеров лучше всего проверить, существует ли ключ boolean
в NSUserdefaults
?Каков правильный способ проверить, существует ли логический ключ в NSUserdefaults/UserDefaults
1- Это приемлемо?
if NSUserDefaults.standardUserDefaults().boolForKey("myKey"){
print("Key Does Exist")
}
2- Это предпочтительный способ?
if (NSUserDefaults.standardUserDefaults().objectForKey("myKey") != nil) {
print("Key Does Exist")
}
(1) и (2) различны. Первое условие истинно, если существует логическое значение для ключа * и * значение 'true'. См. Документацию: https://developer.apple.com/reference/foundation/userdefaults/1416388-bool. –
Почему вы не регистрируете значения по умолчанию с помощью 'NSUserDefaults.registerDefaults'? – Szu
@MartinR - Я вижу. Является ли второй приемлемой для проверки наличия ключа, независимо от того, какой тип это значение? –